TPTP Problem File: DAT227^1.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : DAT227^1 : TPTP v8.2.0. Released v7.0.0.
% Domain   : Data Structures
% Problem  : Tllist 869
% Version  : [Bla16] axioms : Especial.
% English  :

% Refs     : [Loc10] Lochbihler (2010), Coinductive
%          : [RB15]  Reynolds & Blanchette (2015), A Decision Procedure for
%          : [Bla16] Blanchette (2016), Email to Geoff Sutcliffe
% Source   : [Bla16]
% Names    : tllist__869.p [Bla16]

% Status   : Theorem
% Rating   : 1.00 v7.1.0
% Syntax   : Number of formulae    :  331 (  94 unt;  55 typ;   0 def)
%            Number of atoms       : 1105 ( 256 equ;  10 cnn)
%            Maximal formula atoms :   21 (   4 avg)
%            Number of connectives : 5222 (  26   ~;   2   |;  35   &;4728   @)
%                                         (   0 <=>; 431  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   26 (  12 avg)
%            Number of types       :    7 (   6 usr)
%            Number of type conns  : 1658 (1658   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :   53 (  49 usr;   3 con; 0-10 aty)
%            Number of variables   : 1823 ( 290   ^;1441   !;  17   ?;1823   :)
%                                         (  75  !>;   0  ?*;   0  @-;   0  @+)
% SPC      : TH1_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2016-07-13 14:54:19.629
%------------------------------------------------------------------------------
%----Could-be-implicit typings (9)
thf(ty_t_TLList__Mirabelle__qhjoikztpd_Otllist,type,
    tLList446370796tllist: $tType > $tType > $tType ).

thf(ty_t_Set_Oset,type,
    set: $tType > $tType ).

thf(ty_t_itself,type,
    itself: $tType > $tType ).

thf(ty_tf_f,type,
    f: $tType ).

thf(ty_tf_e,type,
    e: $tType ).

thf(ty_tf_d,type,
    d: $tType ).

thf(ty_tf_c,type,
    c: $tType ).

thf(ty_tf_b,type,
    b: $tType ).

thf(ty_tf_a,type,
    a: $tType ).

%----Explicit typings (46)
thf(sy_cl_HOL_Otype,type,
    type: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Orderings_Oord,type,
    ord: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Orderings_Oorder,type,
    order: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Orderings_Olinorder,type,
    linorder: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Orderings_Opreorder,type,
    preorder: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Complete__Partial__Order_Occpo,type,
    comple1141879883l_ccpo: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Complete__Lattices_Ocomplete__lattice,type,
    comple187826305attice: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_c_BNF__Def_Oeq__onp,type,
    bNF_eq_onp: 
      !>[A: $tType] : ( ( A > $o ) > A > A > $o ) ).

thf(sy_c_BNF__Def_Orel__fun,type,
    bNF_rel_fun: 
      !>[A: $tType,C: $tType,B: $tType,D: $tType] : ( ( A > C > $o ) > ( B > D > $o ) > ( A > B ) > ( C > D ) > $o ) ).

thf(sy_c_Complete__Partial__Order_Occpo__class_Ofixp,type,
    comple939513234o_fixp: 
      !>[A: $tType] : ( ( A > A ) > A ) ).

thf(sy_c_Complete__Partial__Order_Occpo__class_Oiterates,type,
    comple453842640erates: 
      !>[A: $tType] : ( ( A > A ) > ( set @ A ) ) ).

thf(sy_c_Complete__Partial__Order_Omonotone,type,
    comple1396247847notone: 
      !>[A: $tType,B: $tType] : ( ( A > A > $o ) > ( B > B > $o ) > ( A > B ) > $o ) ).

thf(sy_c_Fun_Ocomp,type,
    comp: 
      !>[B: $tType,C: $tType,A: $tType] : ( ( B > C ) > ( A > B ) > A > C ) ).

thf(sy_c_Fun_Ofun__upd,type,
    fun_upd: 
      !>[A: $tType,B: $tType] : ( ( A > B ) > A > B > A > B ) ).

thf(sy_c_Fun_Omap__fun,type,
    map_fun: 
      !>[C: $tType,A: $tType,B: $tType,D: $tType] : ( ( C > A ) > ( B > D ) > ( A > B ) > C > D ) ).

thf(sy_c_HOL_OEx1,type,
    ex1: 
      !>[A: $tType] : ( ( A > $o ) > $o ) ).

thf(sy_c_If,type,
    if: 
      !>[A: $tType] : ( $o > A > A > A ) ).

thf(sy_c_Orderings_Oord__class_Oless__eq,type,
    ord_less_eq: 
      !>[A: $tType] : ( A > A > $o ) ).

thf(sy_c_Orderings_Oorder__class_Omono,type,
    order_mono: 
      !>[A: $tType,B: $tType] : ( ( A > B ) > $o ) ).

thf(sy_c_Partial__Function_Ofun__ord,type,
    partial_fun_ord: 
      !>[A: $tType,B: $tType,C: $tType] : ( ( A > B > $o ) > ( C > A ) > ( C > B ) > $o ) ).

thf(sy_c_Pure_Otype,type,
    type2: 
      !>[A: $tType] : ( itself @ A ) ).

thf(sy_c_Quotient_OBex1__rel,type,
    bex1_rel: 
      !>[A: $tType] : ( ( A > A > $o ) > ( A > $o ) > $o ) ).

thf(sy_c_Quotient_OQuotient3,type,
    quotient3: 
      !>[A: $tType,B: $tType] : ( ( A > A > $o ) > ( A > B ) > ( B > A ) > $o ) ).

thf(sy_c_Relation_ODomainp,type,
    domainp: 
      !>[A: $tType,B: $tType] : ( ( A > B > $o ) > A > $o ) ).

thf(sy_c_Relation_Oreflp,type,
    reflp: 
      !>[A: $tType] : ( ( A > A > $o ) > $o ) ).

thf(sy_c_Relation_Orelcompp,type,
    relcompp: 
      !>[A: $tType,B: $tType,C: $tType] : ( ( A > B > $o ) > ( B > C > $o ) > A > C > $o ) ).

thf(sy_c_Set_OCollect,type,
    collect: 
      !>[A: $tType] : ( ( A > $o ) > ( set @ A ) ) ).

thf(sy_c_TLList__Mirabelle__qhjoikztpd_Otllist_Ocase__tllist,type,
    tLList200813139tllist: 
      !>[B: $tType,C: $tType,A: $tType] : ( ( B > C ) > ( A > ( tLList446370796tllist @ A @ B ) > C ) > ( tLList446370796tllist @ A @ B ) > C ) ).

thf(sy_c_TLList__Mirabelle__qhjoikztpd_Otllist_Ocorec__tllist,type,
    tLList1614408749tllist: 
      !>[E: $tType,B: $tType,A: $tType] : ( ( E > $o ) > ( E > B ) > ( E > A ) > ( E > $o ) > ( E > ( tLList446370796tllist @ A @ B ) ) > ( E > E ) > E > ( tLList446370796tllist @ A @ B ) ) ).

thf(sy_c_TLList__Mirabelle__qhjoikztpd_Otllist_Opred__tllist,type,
    tLList11265572tllist: 
      !>[A: $tType,B: $tType] : ( ( A > $o ) > ( B > $o ) > ( tLList446370796tllist @ A @ B ) > $o ) ).

thf(sy_c_TLList__Mirabelle__qhjoikztpd_Otllist_Otllist__all2,type,
    tLList1380991092t_all2: 
      !>[A: $tType,C: $tType,B: $tType,D: $tType] : ( ( A > C > $o ) > ( B > D > $o ) > ( tLList446370796tllist @ A @ B ) > ( tLList446370796tllist @ C @ D ) > $o ) ).

thf(sy_c_TLList__Mirabelle__qhjoikztpd_Ounfold__tllist,type,
    tLList636831159tllist: 
      !>[A: $tType,B: $tType,C: $tType] : ( ( A > $o ) > ( A > B ) > ( A > C ) > ( A > A ) > A > ( tLList446370796tllist @ C @ B ) ) ).

thf(sy_c_Transfer_Obi__total,type,
    bi_total: 
      !>[A: $tType,B: $tType] : ( ( A > B > $o ) > $o ) ).

thf(sy_c_Transfer_Obi__unique,type,
    bi_unique: 
      !>[A: $tType,B: $tType] : ( ( A > B > $o ) > $o ) ).

thf(sy_c_Transfer_Oleft__total,type,
    left_total: 
      !>[A: $tType,B: $tType] : ( ( A > B > $o ) > $o ) ).

thf(sy_c_Transfer_Oleft__unique,type,
    left_unique: 
      !>[A: $tType,B: $tType] : ( ( A > B > $o ) > $o ) ).

thf(sy_c_Transfer_Orev__implies,type,
    rev_implies: $o > $o > $o ).

thf(sy_c_Transfer_Oright__total,type,
    right_total: 
      !>[A: $tType,B: $tType] : ( ( A > B > $o ) > $o ) ).

thf(sy_c_Transfer_Oright__unique,type,
    right_unique: 
      !>[A: $tType,B: $tType] : ( ( A > B > $o ) > $o ) ).

thf(sy_c_Transfer_Otransfer__bforall,type,
    transfer_bforall: 
      !>[A: $tType] : ( ( A > $o ) > ( A > $o ) > $o ) ).

thf(sy_c_Transfer_Otransfer__forall,type,
    transfer_forall: 
      !>[A: $tType] : ( ( A > $o ) > $o ) ).

thf(sy_c_Transitive__Closure_Ortranclp,type,
    transitive_rtranclp: 
      !>[A: $tType] : ( ( A > A > $o ) > A > A > $o ) ).

thf(sy_c_member,type,
    member: 
      !>[A: $tType] : ( A > ( set @ A ) > $o ) ).

thf(sy_v_A,type,
    a2: a > b > $o ).

thf(sy_v_B,type,
    b2: c > e > $o ).

thf(sy_v_C,type,
    c2: d > f > $o ).

%----Relevant facts (256)
thf(fact_0_tllist__all2__mono,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,P: A > B > $o,Q: C > D > $o,Xs: tLList446370796tllist @ A @ C,Ys: tLList446370796tllist @ B @ D,P2: A > B > $o,Q2: C > D > $o] :
      ( ( tLList1380991092t_all2 @ A @ B @ C @ D @ P @ Q @ Xs @ Ys )
     => ( ! [X: A,Y: B] :
            ( ( P @ X @ Y )
           => ( P2 @ X @ Y ) )
       => ( ! [X: C,Y: D] :
              ( ( Q @ X @ Y )
             => ( Q2 @ X @ Y ) )
         => ( tLList1380991092t_all2 @ A @ B @ C @ D @ P2 @ Q2 @ Xs @ Ys ) ) ) ) ).

% tllist_all2_mono
thf(fact_1_tllist_Orel__eq,axiom,
    ! [B: $tType,A: $tType] :
      ( ( tLList1380991092t_all2 @ A @ A @ B @ B
        @ ^ [Y2: A,Z: A] : Y2 = Z
        @ ^ [Y2: B,Z: B] : Y2 = Z )
      = ( ^ [Y2: tLList446370796tllist @ A @ B,Z: tLList446370796tllist @ A @ B] : Y2 = Z ) ) ).

% tllist.rel_eq
thf(fact_2_tllist_Orel__refl,axiom,
    ! [D: $tType,C: $tType,R1a: C > C > $o,R2a: D > D > $o,X2: tLList446370796tllist @ C @ D] :
      ( ! [X: C] : ( R1a @ X @ X )
     => ( ! [X: D] : ( R2a @ X @ X )
       => ( tLList1380991092t_all2 @ C @ C @ D @ D @ R1a @ R2a @ X2 @ X2 ) ) ) ).

% tllist.rel_refl
thf(fact_3_let__rsp,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,R1: A > B > $o,R2: C > D > $o] :
      ( bNF_rel_fun @ A @ B @ ( ( A > C ) > C ) @ ( ( B > D ) > D ) @ R1 @ ( bNF_rel_fun @ ( A > C ) @ ( B > D ) @ C @ D @ ( bNF_rel_fun @ A @ B @ C @ D @ R1 @ R2 ) @ R2 )
      @ ^ [S: A,F: A > C] : ( F @ S )
      @ ^ [S: B,F: B > D] : ( F @ S ) ) ).

% let_rsp
thf(fact_4_Let__transfer,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,A2: A > B > $o,B2: C > D > $o] :
      ( bNF_rel_fun @ A @ B @ ( ( A > C ) > C ) @ ( ( B > D ) > D ) @ A2 @ ( bNF_rel_fun @ ( A > C ) @ ( B > D ) @ C @ D @ ( bNF_rel_fun @ A @ B @ C @ D @ A2 @ B2 ) @ B2 )
      @ ^ [S: A,F: A > C] : ( F @ S )
      @ ^ [S: B,F: B > D] : ( F @ S ) ) ).

% Let_transfer
thf(fact_5_tllist_Ocorec__transfer,axiom,
    ! [E: $tType,B: $tType,A: $tType,C: $tType,D: $tType,F2: $tType,S2: E > F2 > $o,R2: B > D > $o,R1: A > C > $o] :
      ( bNF_rel_fun @ ( E > $o ) @ ( F2 > $o ) @ ( ( E > B ) > ( E > A ) > ( E > $o ) > ( E > ( tLList446370796tllist @ A @ B ) ) > ( E > E ) > E > ( tLList446370796tllist @ A @ B ) ) @ ( ( F2 > D ) > ( F2 > C ) > ( F2 > $o ) > ( F2 > ( tLList446370796tllist @ C @ D ) ) > ( F2 > F2 ) > F2 > ( tLList446370796tllist @ C @ D ) )
      @ ( bNF_rel_fun @ E @ F2 @ $o @ $o @ S2
        @ ^ [Y2: $o,Z: $o] : Y2 = Z )
      @ ( bNF_rel_fun @ ( E > B ) @ ( F2 > D ) @ ( ( E > A ) > ( E > $o ) > ( E > ( tLList446370796tllist @ A @ B ) ) > ( E > E ) > E > ( tLList446370796tllist @ A @ B ) ) @ ( ( F2 > C ) > ( F2 > $o ) > ( F2 > ( tLList446370796tllist @ C @ D ) ) > ( F2 > F2 ) > F2 > ( tLList446370796tllist @ C @ D ) ) @ ( bNF_rel_fun @ E @ F2 @ B @ D @ S2 @ R2 )
        @ ( bNF_rel_fun @ ( E > A ) @ ( F2 > C ) @ ( ( E > $o ) > ( E > ( tLList446370796tllist @ A @ B ) ) > ( E > E ) > E > ( tLList446370796tllist @ A @ B ) ) @ ( ( F2 > $o ) > ( F2 > ( tLList446370796tllist @ C @ D ) ) > ( F2 > F2 ) > F2 > ( tLList446370796tllist @ C @ D ) ) @ ( bNF_rel_fun @ E @ F2 @ A @ C @ S2 @ R1 )
          @ ( bNF_rel_fun @ ( E > $o ) @ ( F2 > $o ) @ ( ( E > ( tLList446370796tllist @ A @ B ) ) > ( E > E ) > E > ( tLList446370796tllist @ A @ B ) ) @ ( ( F2 > ( tLList446370796tllist @ C @ D ) ) > ( F2 > F2 ) > F2 > ( tLList446370796tllist @ C @ D ) )
            @ ( bNF_rel_fun @ E @ F2 @ $o @ $o @ S2
              @ ^ [Y2: $o,Z: $o] : Y2 = Z )
            @ ( bNF_rel_fun @ ( E > ( tLList446370796tllist @ A @ B ) ) @ ( F2 > ( tLList446370796tllist @ C @ D ) ) @ ( ( E > E ) > E > ( tLList446370796tllist @ A @ B ) ) @ ( ( F2 > F2 ) > F2 > ( tLList446370796tllist @ C @ D ) ) @ ( bNF_rel_fun @ E @ F2 @ ( tLList446370796tllist @ A @ B ) @ ( tLList446370796tllist @ C @ D ) @ S2 @ ( tLList1380991092t_all2 @ A @ C @ B @ D @ R1 @ R2 ) ) @ ( bNF_rel_fun @ ( E > E ) @ ( F2 > F2 ) @ ( E > ( tLList446370796tllist @ A @ B ) ) @ ( F2 > ( tLList446370796tllist @ C @ D ) ) @ ( bNF_rel_fun @ E @ F2 @ E @ F2 @ S2 @ S2 ) @ ( bNF_rel_fun @ E @ F2 @ ( tLList446370796tllist @ A @ B ) @ ( tLList446370796tllist @ C @ D ) @ S2 @ ( tLList1380991092t_all2 @ A @ C @ B @ D @ R1 @ R2 ) ) ) ) ) ) )
      @ ( tLList1614408749tllist @ E @ B @ A )
      @ ( tLList1614408749tllist @ F2 @ D @ C ) ) ).

% tllist.corec_transfer
thf(fact_6_rel__funI,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,A2: A > B > $o,B2: C > D > $o,F3: A > C,G: B > D] :
      ( ! [X: A,Y: B] :
          ( ( A2 @ X @ Y )
         => ( B2 @ ( F3 @ X ) @ ( G @ Y ) ) )
     => ( bNF_rel_fun @ A @ B @ C @ D @ A2 @ B2 @ F3 @ G ) ) ).

% rel_funI
thf(fact_7_fun_Orel__transfer,axiom,
    ! [B: $tType,A: $tType,C: $tType,E: $tType,D: $tType,Sa: A > C > $o,Sc: B > E > $o] :
      ( bNF_rel_fun @ ( A > B > $o ) @ ( C > E > $o ) @ ( ( D > A ) > ( D > B ) > $o ) @ ( ( D > C ) > ( D > E ) > $o )
      @ ( bNF_rel_fun @ A @ C @ ( B > $o ) @ ( E > $o ) @ Sa
        @ ( bNF_rel_fun @ B @ E @ $o @ $o @ Sc
          @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
      @ ( bNF_rel_fun @ ( D > A ) @ ( D > C ) @ ( ( D > B ) > $o ) @ ( ( D > E ) > $o )
        @ ( bNF_rel_fun @ D @ D @ A @ C
          @ ^ [Y2: D,Z: D] : Y2 = Z
          @ Sa )
        @ ( bNF_rel_fun @ ( D > B ) @ ( D > E ) @ $o @ $o
          @ ( bNF_rel_fun @ D @ D @ B @ E
            @ ^ [Y2: D,Z: D] : Y2 = Z
            @ Sc )
          @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
      @ ( bNF_rel_fun @ D @ D @ A @ B
        @ ^ [Y2: D,Z: D] : Y2 = Z )
      @ ( bNF_rel_fun @ D @ D @ C @ E
        @ ^ [Y2: D,Z: D] : Y2 = Z ) ) ).

% fun.rel_transfer
thf(fact_8_If__transfer,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o] :
      ( bNF_rel_fun @ $o @ $o @ ( A > A > A ) @ ( B > B > B )
      @ ^ [Y2: $o,Z: $o] : Y2 = Z
      @ ( bNF_rel_fun @ A @ B @ ( A > A ) @ ( B > B ) @ A2 @ ( bNF_rel_fun @ A @ B @ A @ B @ A2 @ A2 ) )
      @ ( if @ A )
      @ ( if @ B ) ) ).

% If_transfer
thf(fact_9_rel__fun__def__butlast,axiom,
    ! [B: $tType,D: $tType,C: $tType,E: $tType,F2: $tType,A: $tType,R: A > B > $o,S2: C > E > $o,T: D > F2 > $o,F3: A > C > D,G: B > E > F2] :
      ( ( bNF_rel_fun @ A @ B @ ( C > D ) @ ( E > F2 ) @ R @ ( bNF_rel_fun @ C @ E @ D @ F2 @ S2 @ T ) @ F3 @ G )
      = ( ! [X3: A,Y3: B] :
            ( ( R @ X3 @ Y3 )
           => ( bNF_rel_fun @ C @ E @ D @ F2 @ S2 @ T @ ( F3 @ X3 ) @ ( G @ Y3 ) ) ) ) ) ).

% rel_fun_def_butlast
thf(fact_10_map__fun__parametric,axiom,
    ! [A: $tType,B: $tType,E: $tType,F2: $tType,H: $tType,G2: $tType,D: $tType,C: $tType,A2: A > C > $o,B2: B > D > $o,C2: E > G2 > $o,D2: F2 > H > $o] : ( bNF_rel_fun @ ( A > B ) @ ( C > D ) @ ( ( E > F2 ) > ( B > E ) > A > F2 ) @ ( ( G2 > H ) > ( D > G2 ) > C > H ) @ ( bNF_rel_fun @ A @ C @ B @ D @ A2 @ B2 ) @ ( bNF_rel_fun @ ( E > F2 ) @ ( G2 > H ) @ ( ( B > E ) > A > F2 ) @ ( ( D > G2 ) > C > H ) @ ( bNF_rel_fun @ E @ G2 @ F2 @ H @ C2 @ D2 ) @ ( bNF_rel_fun @ ( B > E ) @ ( D > G2 ) @ ( A > F2 ) @ ( C > H ) @ ( bNF_rel_fun @ B @ D @ E @ G2 @ B2 @ C2 ) @ ( bNF_rel_fun @ A @ C @ F2 @ H @ A2 @ D2 ) ) ) @ ( map_fun @ A @ B @ E @ F2 ) @ ( map_fun @ C @ D @ G2 @ H ) ) ).

% map_fun_parametric
thf(fact_11_rel__funD,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,A2: A > B > $o,B2: C > D > $o,F3: A > C,G: B > D,X2: A,Y4: B] :
      ( ( bNF_rel_fun @ A @ B @ C @ D @ A2 @ B2 @ F3 @ G )
     => ( ( A2 @ X2 @ Y4 )
       => ( B2 @ ( F3 @ X2 ) @ ( G @ Y4 ) ) ) ) ).

% rel_funD
thf(fact_12_rel__funE,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,A2: A > B > $o,B2: C > D > $o,F3: A > C,G: B > D,X2: A,Y4: B] :
      ( ( bNF_rel_fun @ A @ B @ C @ D @ A2 @ B2 @ F3 @ G )
     => ( ( A2 @ X2 @ Y4 )
       => ( B2 @ ( F3 @ X2 ) @ ( G @ Y4 ) ) ) ) ).

% rel_funE
thf(fact_13_apply__rsp_H,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,R1: A > B > $o,R2: C > D > $o,F3: A > C,G: B > D,X2: A,Y4: B] :
      ( ( bNF_rel_fun @ A @ B @ C @ D @ R1 @ R2 @ F3 @ G )
     => ( ( R1 @ X2 @ Y4 )
       => ( R2 @ ( F3 @ X2 ) @ ( G @ Y4 ) ) ) ) ).

% apply_rsp'
thf(fact_14_rel__funD2,axiom,
    ! [B: $tType,C: $tType,A: $tType,A2: A > A > $o,B2: B > C > $o,F3: A > B,G: A > C,X2: A] :
      ( ( bNF_rel_fun @ A @ A @ B @ C @ A2 @ B2 @ F3 @ G )
     => ( ( A2 @ X2 @ X2 )
       => ( B2 @ ( F3 @ X2 ) @ ( G @ X2 ) ) ) ) ).

% rel_funD2
thf(fact_15_tllist_Orel__transfer,axiom,
    ! [A: $tType,C: $tType,B: $tType,D: $tType,H: $tType,F2: $tType,G2: $tType,E: $tType,S1a: A > E > $o,S1c: C > G2 > $o,S2a: B > F2 > $o,S2c: D > H > $o] :
      ( bNF_rel_fun @ ( A > C > $o ) @ ( E > G2 > $o ) @ ( ( B > D > $o ) > ( tLList446370796tllist @ A @ B ) > ( tLList446370796tllist @ C @ D ) > $o ) @ ( ( F2 > H > $o ) > ( tLList446370796tllist @ E @ F2 ) > ( tLList446370796tllist @ G2 @ H ) > $o )
      @ ( bNF_rel_fun @ A @ E @ ( C > $o ) @ ( G2 > $o ) @ S1a
        @ ( bNF_rel_fun @ C @ G2 @ $o @ $o @ S1c
          @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
      @ ( bNF_rel_fun @ ( B > D > $o ) @ ( F2 > H > $o ) @ ( ( tLList446370796tllist @ A @ B ) > ( tLList446370796tllist @ C @ D ) > $o ) @ ( ( tLList446370796tllist @ E @ F2 ) > ( tLList446370796tllist @ G2 @ H ) > $o )
        @ ( bNF_rel_fun @ B @ F2 @ ( D > $o ) @ ( H > $o ) @ S2a
          @ ( bNF_rel_fun @ D @ H @ $o @ $o @ S2c
            @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
        @ ( bNF_rel_fun @ ( tLList446370796tllist @ A @ B ) @ ( tLList446370796tllist @ E @ F2 ) @ ( ( tLList446370796tllist @ C @ D ) > $o ) @ ( ( tLList446370796tllist @ G2 @ H ) > $o ) @ ( tLList1380991092t_all2 @ A @ E @ B @ F2 @ S1a @ S2a )
          @ ( bNF_rel_fun @ ( tLList446370796tllist @ C @ D ) @ ( tLList446370796tllist @ G2 @ H ) @ $o @ $o @ ( tLList1380991092t_all2 @ C @ G2 @ D @ H @ S1c @ S2c )
            @ ^ [Y2: $o,Z: $o] : Y2 = Z ) ) )
      @ ( tLList1380991092t_all2 @ A @ C @ B @ D )
      @ ( tLList1380991092t_all2 @ E @ G2 @ F2 @ H ) ) ).

% tllist.rel_transfer
thf(fact_16_fun_Orel__refl,axiom,
    ! [B: $tType,D: $tType,Ra: B > B > $o,X2: D > B] :
      ( ! [X: B] : ( Ra @ X @ X )
     => ( bNF_rel_fun @ D @ D @ B @ B
        @ ^ [Y2: D,Z: D] : Y2 = Z
        @ Ra
        @ X2
        @ X2 ) ) ).

% fun.rel_refl
thf(fact_17_fun_Orel__eq,axiom,
    ! [A: $tType,D: $tType] :
      ( ( bNF_rel_fun @ D @ D @ A @ A
        @ ^ [Y2: D,Z: D] : Y2 = Z
        @ ^ [Y2: A,Z: A] : Y2 = Z )
      = ( ^ [Y2: D > A,Z: D > A] : Y2 = Z ) ) ).

% fun.rel_eq
thf(fact_18_rel__fun__mono_H,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,Y5: A > B > $o,X4: A > B > $o,A2: C > D > $o,B2: C > D > $o,F3: A > C,G: B > D] :
      ( ! [X: A,Y: B] :
          ( ( Y5 @ X @ Y )
         => ( X4 @ X @ Y ) )
     => ( ! [X: C,Y: D] :
            ( ( A2 @ X @ Y )
           => ( B2 @ X @ Y ) )
       => ( ( bNF_rel_fun @ A @ B @ C @ D @ X4 @ A2 @ F3 @ G )
         => ( bNF_rel_fun @ A @ B @ C @ D @ Y5 @ B2 @ F3 @ G ) ) ) ) ).

% rel_fun_mono'
thf(fact_19_rel__fun__mono,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,X4: A > B > $o,A2: C > D > $o,F3: A > C,G: B > D,Y5: A > B > $o,B2: C > D > $o] :
      ( ( bNF_rel_fun @ A @ B @ C @ D @ X4 @ A2 @ F3 @ G )
     => ( ! [X: A,Y: B] :
            ( ( Y5 @ X @ Y )
           => ( X4 @ X @ Y ) )
       => ( ! [X: C,Y: D] :
              ( ( A2 @ X @ Y )
             => ( B2 @ X @ Y ) )
         => ( bNF_rel_fun @ A @ B @ C @ D @ Y5 @ B2 @ F3 @ G ) ) ) ) ).

% rel_fun_mono
thf(fact_20_map__fun__apply,axiom,
    ! [D: $tType,A: $tType,C: $tType,B: $tType] :
      ( ( map_fun @ B @ C @ D @ A )
      = ( ^ [F: B > C,G3: D > A,H2: C > D,X3: B] : ( G3 @ ( H2 @ ( F @ X3 ) ) ) ) ) ).

% map_fun_apply
thf(fact_21_if__rsp,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( bNF_rel_fun @ $o @ $o @ ( A > A > A ) @ ( A > A > A )
        @ ^ [Y2: $o,Z: $o] : Y2 = Z
        @ ( bNF_rel_fun @ A @ A @ ( A > A ) @ ( A > A ) @ R @ ( bNF_rel_fun @ A @ A @ A @ A @ R @ R ) )
        @ ( if @ A )
        @ ( if @ A ) ) ) ).

% if_rsp
thf(fact_22_tllist_Opred__transfer,axiom,
    ! [A: $tType,B: $tType,D: $tType,C: $tType,R1: A > C > $o,R2: B > D > $o] :
      ( bNF_rel_fun @ ( A > $o ) @ ( C > $o ) @ ( ( B > $o ) > ( tLList446370796tllist @ A @ B ) > $o ) @ ( ( D > $o ) > ( tLList446370796tllist @ C @ D ) > $o )
      @ ( bNF_rel_fun @ A @ C @ $o @ $o @ R1
        @ ^ [Y2: $o,Z: $o] : Y2 = Z )
      @ ( bNF_rel_fun @ ( B > $o ) @ ( D > $o ) @ ( ( tLList446370796tllist @ A @ B ) > $o ) @ ( ( tLList446370796tllist @ C @ D ) > $o )
        @ ( bNF_rel_fun @ B @ D @ $o @ $o @ R2
          @ ^ [Y2: $o,Z: $o] : Y2 = Z )
        @ ( bNF_rel_fun @ ( tLList446370796tllist @ A @ B ) @ ( tLList446370796tllist @ C @ D ) @ $o @ $o @ ( tLList1380991092t_all2 @ A @ C @ B @ D @ R1 @ R2 )
          @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
      @ ( tLList11265572tllist @ A @ B )
      @ ( tLList11265572tllist @ C @ D ) ) ).

% tllist.pred_transfer
thf(fact_23_comp__transfer,axiom,
    ! [A: $tType,B: $tType,E: $tType,F2: $tType,D: $tType,C: $tType,B2: A > C > $o,C2: B > D > $o,A2: E > F2 > $o] : ( bNF_rel_fun @ ( A > B ) @ ( C > D ) @ ( ( E > A ) > E > B ) @ ( ( F2 > C ) > F2 > D ) @ ( bNF_rel_fun @ A @ C @ B @ D @ B2 @ C2 ) @ ( bNF_rel_fun @ ( E > A ) @ ( F2 > C ) @ ( E > B ) @ ( F2 > D ) @ ( bNF_rel_fun @ E @ F2 @ A @ C @ A2 @ B2 ) @ ( bNF_rel_fun @ E @ F2 @ B @ D @ A2 @ C2 ) ) @ ( comp @ A @ B @ E ) @ ( comp @ C @ D @ F2 ) ) ).

% comp_transfer
thf(fact_24_fun_Omap__transfer,axiom,
    ! [A: $tType,B: $tType,D: $tType,G2: $tType,F2: $tType,Rb: A > F2 > $o,Sd: B > G2 > $o] :
      ( bNF_rel_fun @ ( A > B ) @ ( F2 > G2 ) @ ( ( D > A ) > D > B ) @ ( ( D > F2 ) > D > G2 ) @ ( bNF_rel_fun @ A @ F2 @ B @ G2 @ Rb @ Sd )
      @ ( bNF_rel_fun @ ( D > A ) @ ( D > F2 ) @ ( D > B ) @ ( D > G2 )
        @ ( bNF_rel_fun @ D @ D @ A @ F2
          @ ^ [Y2: D,Z: D] : Y2 = Z
          @ Rb )
        @ ( bNF_rel_fun @ D @ D @ B @ G2
          @ ^ [Y2: D,Z: D] : Y2 = Z
          @ Sd ) )
      @ ( comp @ A @ B @ D )
      @ ( comp @ F2 @ G2 @ D ) ) ).

% fun.map_transfer
thf(fact_25_o__rsp_I1_J,axiom,
    ! [A: $tType,B: $tType,E: $tType,F2: $tType,D: $tType,C: $tType,R2: A > C > $o,R3: B > D > $o,R1: E > F2 > $o] : ( bNF_rel_fun @ ( A > B ) @ ( C > D ) @ ( ( E > A ) > E > B ) @ ( ( F2 > C ) > F2 > D ) @ ( bNF_rel_fun @ A @ C @ B @ D @ R2 @ R3 ) @ ( bNF_rel_fun @ ( E > A ) @ ( F2 > C ) @ ( E > B ) @ ( F2 > D ) @ ( bNF_rel_fun @ E @ F2 @ A @ C @ R1 @ R2 ) @ ( bNF_rel_fun @ E @ F2 @ B @ D @ R1 @ R3 ) ) @ ( comp @ A @ B @ E ) @ ( comp @ C @ D @ F2 ) ) ).

% o_rsp(1)
thf(fact_26_o__rsp_I2_J,axiom,
    ! [E: $tType,F2: $tType,H: $tType,G2: $tType,R1: E > F2 > $o] :
      ( bNF_rel_fun @ ( G2 > H ) @ ( G2 > H ) @ ( ( E > G2 ) > E > H ) @ ( ( F2 > G2 ) > F2 > H )
      @ ^ [Y2: G2 > H,Z: G2 > H] : Y2 = Z
      @ ( bNF_rel_fun @ ( E > G2 ) @ ( F2 > G2 ) @ ( E > H ) @ ( F2 > H )
        @ ( bNF_rel_fun @ E @ F2 @ G2 @ G2 @ R1
          @ ^ [Y2: G2,Z: G2] : Y2 = Z )
        @ ( bNF_rel_fun @ E @ F2 @ H @ H @ R1
          @ ^ [Y2: H,Z: H] : Y2 = Z ) )
      @ ( comp @ G2 @ H @ E )
      @ ( comp @ G2 @ H @ F2 ) ) ).

% o_rsp(2)
thf(fact_27_tllist_Ocase__transfer,axiom,
    ! [B: $tType,E: $tType,A: $tType,C: $tType,F2: $tType,D: $tType,R2: B > D > $o,S2: E > F2 > $o,R1: A > C > $o] : ( bNF_rel_fun @ ( B > E ) @ ( D > F2 ) @ ( ( A > ( tLList446370796tllist @ A @ B ) > E ) > ( tLList446370796tllist @ A @ B ) > E ) @ ( ( C > ( tLList446370796tllist @ C @ D ) > F2 ) > ( tLList446370796tllist @ C @ D ) > F2 ) @ ( bNF_rel_fun @ B @ D @ E @ F2 @ R2 @ S2 ) @ ( bNF_rel_fun @ ( A > ( tLList446370796tllist @ A @ B ) > E ) @ ( C > ( tLList446370796tllist @ C @ D ) > F2 ) @ ( ( tLList446370796tllist @ A @ B ) > E ) @ ( ( tLList446370796tllist @ C @ D ) > F2 ) @ ( bNF_rel_fun @ A @ C @ ( ( tLList446370796tllist @ A @ B ) > E ) @ ( ( tLList446370796tllist @ C @ D ) > F2 ) @ R1 @ ( bNF_rel_fun @ ( tLList446370796tllist @ A @ B ) @ ( tLList446370796tllist @ C @ D ) @ E @ F2 @ ( tLList1380991092t_all2 @ A @ C @ B @ D @ R1 @ R2 ) @ S2 ) ) @ ( bNF_rel_fun @ ( tLList446370796tllist @ A @ B ) @ ( tLList446370796tllist @ C @ D ) @ E @ F2 @ ( tLList1380991092t_all2 @ A @ C @ B @ D @ R1 @ R2 ) @ S2 ) ) @ ( tLList200813139tllist @ B @ E @ A ) @ ( tLList200813139tllist @ D @ F2 @ C ) ) ).

% tllist.case_transfer
thf(fact_28_case__tllist__transfer,axiom,
    ! [A: $tType,B: $tType,E: $tType,F2: $tType,D: $tType,C: $tType,B2: A > C > $o,C2: B > D > $o,A2: E > F2 > $o] : ( bNF_rel_fun @ ( A > B ) @ ( C > D ) @ ( ( E > ( tLList446370796tllist @ E @ A ) > B ) > ( tLList446370796tllist @ E @ A ) > B ) @ ( ( F2 > ( tLList446370796tllist @ F2 @ C ) > D ) > ( tLList446370796tllist @ F2 @ C ) > D ) @ ( bNF_rel_fun @ A @ C @ B @ D @ B2 @ C2 ) @ ( bNF_rel_fun @ ( E > ( tLList446370796tllist @ E @ A ) > B ) @ ( F2 > ( tLList446370796tllist @ F2 @ C ) > D ) @ ( ( tLList446370796tllist @ E @ A ) > B ) @ ( ( tLList446370796tllist @ F2 @ C ) > D ) @ ( bNF_rel_fun @ E @ F2 @ ( ( tLList446370796tllist @ E @ A ) > B ) @ ( ( tLList446370796tllist @ F2 @ C ) > D ) @ A2 @ ( bNF_rel_fun @ ( tLList446370796tllist @ E @ A ) @ ( tLList446370796tllist @ F2 @ C ) @ B @ D @ ( tLList1380991092t_all2 @ E @ F2 @ A @ C @ A2 @ B2 ) @ C2 ) ) @ ( bNF_rel_fun @ ( tLList446370796tllist @ E @ A ) @ ( tLList446370796tllist @ F2 @ C ) @ B @ D @ ( tLList1380991092t_all2 @ E @ F2 @ A @ C @ A2 @ B2 ) @ C2 ) ) @ ( tLList200813139tllist @ A @ B @ E ) @ ( tLList200813139tllist @ C @ D @ F2 ) ) ).

% case_tllist_transfer
thf(fact_29_fun__ord__parametric,axiom,
    ! [C: $tType,D: $tType,A: $tType,B: $tType,F2: $tType,E: $tType,C2: A > B > $o,A2: C > E > $o,B2: D > F2 > $o] :
      ( ( bi_total @ A @ B @ C2 )
     => ( bNF_rel_fun @ ( C > D > $o ) @ ( E > F2 > $o ) @ ( ( A > C ) > ( A > D ) > $o ) @ ( ( B > E ) > ( B > F2 ) > $o )
        @ ( bNF_rel_fun @ C @ E @ ( D > $o ) @ ( F2 > $o ) @ A2
          @ ( bNF_rel_fun @ D @ F2 @ $o @ $o @ B2
            @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
        @ ( bNF_rel_fun @ ( A > C ) @ ( B > E ) @ ( ( A > D ) > $o ) @ ( ( B > F2 ) > $o ) @ ( bNF_rel_fun @ A @ B @ C @ E @ C2 @ A2 )
          @ ( bNF_rel_fun @ ( A > D ) @ ( B > F2 ) @ $o @ $o @ ( bNF_rel_fun @ A @ B @ D @ F2 @ C2 @ B2 )
            @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
        @ ( partial_fun_ord @ C @ D @ A )
        @ ( partial_fun_ord @ E @ F2 @ B ) ) ) ).

% fun_ord_parametric
thf(fact_30_comp__apply,axiom,
    ! [C: $tType,A: $tType,B: $tType] :
      ( ( comp @ B @ A @ C )
      = ( ^ [F: B > A,G3: C > B,X3: C] : ( F @ ( G3 @ X3 ) ) ) ) ).

% comp_apply
thf(fact_31_map__fun_Ocomp,axiom,
    ! [E: $tType,C: $tType,A: $tType,F2: $tType,D: $tType,B: $tType,F3: E > C,G: D > F2,H3: C > A,I: B > D] :
      ( ( comp @ ( C > D ) @ ( E > F2 ) @ ( A > B ) @ ( map_fun @ E @ C @ D @ F2 @ F3 @ G ) @ ( map_fun @ C @ A @ B @ D @ H3 @ I ) )
      = ( map_fun @ E @ A @ B @ F2 @ ( comp @ C @ A @ E @ H3 @ F3 ) @ ( comp @ D @ F2 @ B @ G @ I ) ) ) ).

% map_fun.comp
thf(fact_32_cond__prs,axiom,
    ! [A: $tType,B: $tType,R: A > A > $o,Absf: A > B,Repf: B > A,A3: $o,B3: B,C3: B] :
      ( ( quotient3 @ A @ B @ R @ Absf @ Repf )
     => ( ( A3
         => ( ( Absf @ ( if @ A @ A3 @ ( Repf @ B3 ) @ ( Repf @ C3 ) ) )
            = B3 ) )
        & ( ~ A3
         => ( ( Absf @ ( if @ A @ A3 @ ( Repf @ B3 ) @ ( Repf @ C3 ) ) )
            = C3 ) ) ) ) ).

% cond_prs
thf(fact_33_Quotient3I,axiom,
    ! [B: $tType,A: $tType,Abs: B > A,Rep: A > B,R: B > B > $o] :
      ( ! [A4: A] :
          ( ( Abs @ ( Rep @ A4 ) )
          = A4 )
     => ( ! [A4: A] : ( R @ ( Rep @ A4 ) @ ( Rep @ A4 ) )
       => ( ! [R4: B,S3: B] :
              ( ( R @ R4 @ S3 )
              = ( ( R @ R4 @ R4 )
                & ( R @ S3 @ S3 )
                & ( ( Abs @ R4 )
                  = ( Abs @ S3 ) ) ) )
         => ( quotient3 @ B @ A @ R @ Abs @ Rep ) ) ) ) ).

% Quotient3I
thf(fact_34_equals__rsp,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,Xa: A,Xb: A,Ya: A,Yb: A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( R @ Xa @ Xb )
       => ( ( R @ Ya @ Yb )
         => ( ( R @ Xa @ Ya )
            = ( R @ Xb @ Yb ) ) ) ) ) ).

% equals_rsp
thf(fact_35_rep__abs__rsp,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,X1: A,X22: A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( R @ X1 @ X22 )
       => ( R @ X1 @ ( Rep @ ( Abs @ X22 ) ) ) ) ) ).

% rep_abs_rsp
thf(fact_36_bi__total__eq,axiom,
    ! [A: $tType] :
      ( bi_total @ A @ A
      @ ^ [Y2: A,Z: A] : Y2 = Z ) ).

% bi_total_eq
thf(fact_37_comp__apply__eq,axiom,
    ! [B: $tType,D: $tType,A: $tType,C: $tType,F3: B > A,G: C > B,X2: C,H3: D > A,K: C > D] :
      ( ( ( F3 @ ( G @ X2 ) )
        = ( H3 @ ( K @ X2 ) ) )
     => ( ( comp @ B @ A @ C @ F3 @ G @ X2 )
        = ( comp @ D @ A @ C @ H3 @ K @ X2 ) ) ) ).

% comp_apply_eq
thf(fact_38_bi__total__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( bi_total @ A @ B )
      = ( ^ [R5: A > B > $o] :
            ( ! [X3: A] :
                ( ^ [P3: B > $o] :
                  ? [X5: B] : ( P3 @ X5 )
                @ ( R5 @ X3 ) )
            & ! [Y3: B] :
              ? [X3: A] : ( R5 @ X3 @ Y3 ) ) ) ) ).

% bi_total_def
thf(fact_39_Quotient3__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( quotient3 @ A @ B )
      = ( ^ [R5: A > A > $o,Abs2: A > B,Rep2: B > A] :
            ( ! [A5: B] :
                ( ( Abs2 @ ( Rep2 @ A5 ) )
                = A5 )
            & ! [A5: B] : ( R5 @ ( Rep2 @ A5 ) @ ( Rep2 @ A5 ) )
            & ! [R6: A,S: A] :
                ( ( R5 @ R6 @ S )
                = ( ( R5 @ R6 @ R6 )
                  & ( R5 @ S @ S )
                  & ( ( Abs2 @ R6 )
                    = ( Abs2 @ S ) ) ) ) ) ) ) ).

% Quotient3_def
thf(fact_40_Quotient3__rel,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,R7: A,S4: A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( ( R @ R7 @ R7 )
          & ( R @ S4 @ S4 )
          & ( ( Abs @ R7 )
            = ( Abs @ S4 ) ) )
        = ( R @ R7 @ S4 ) ) ) ).

% Quotient3_rel
thf(fact_41_fun_Omap__comp,axiom,
    ! [B: $tType,C: $tType,A: $tType,D: $tType,G: B > C,F3: A > B,V: D > A] :
      ( ( comp @ B @ C @ D @ G @ ( comp @ A @ B @ D @ F3 @ V ) )
      = ( comp @ A @ C @ D @ ( comp @ B @ C @ A @ G @ F3 ) @ V ) ) ).

% fun.map_comp
thf(fact_42_Quotient3__refl1,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,R7: A,S4: A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( R @ R7 @ S4 )
       => ( R @ R7 @ R7 ) ) ) ).

% Quotient3_refl1
thf(fact_43_Quotient3__refl2,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,R7: A,S4: A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( R @ R7 @ S4 )
       => ( R @ S4 @ S4 ) ) ) ).

% Quotient3_refl2
thf(fact_44_rep__abs__rsp__left,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,X1: A,X22: A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( R @ X1 @ X22 )
       => ( R @ ( Rep @ ( Abs @ X1 ) ) @ X22 ) ) ) ).

% rep_abs_rsp_left
thf(fact_45_mem__Collect__eq,axiom,
    ! [A: $tType,A3: A,P: A > $o] :
      ( ( member @ A @ A3 @ ( collect @ A @ P ) )
      = ( P @ A3 ) ) ).

% mem_Collect_eq
thf(fact_46_Collect__mem__eq,axiom,
    ! [A: $tType,A2: set @ A] :
      ( ( collect @ A
        @ ^ [X3: A] : ( member @ A @ X3 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_47_Collect__cong,axiom,
    ! [A: $tType,P: A > $o,Q: A > $o] :
      ( ! [X: A] :
          ( ( P @ X )
          = ( Q @ X ) )
     => ( ( collect @ A @ P )
        = ( collect @ A @ Q ) ) ) ).

% Collect_cong
thf(fact_48_ext,axiom,
    ! [B: $tType,A: $tType,F3: A > B,G: A > B] :
      ( ! [X: A] :
          ( ( F3 @ X )
          = ( G @ X ) )
     => ( F3 = G ) ) ).

% ext
thf(fact_49_Quotient3__abs__rep,axiom,
    ! [A: $tType,B: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,A3: B] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( Abs @ ( Rep @ A3 ) )
        = A3 ) ) ).

% Quotient3_abs_rep
thf(fact_50_Quotient3__rel__abs,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,R7: A,S4: A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( R @ R7 @ S4 )
       => ( ( Abs @ R7 )
          = ( Abs @ S4 ) ) ) ) ).

% Quotient3_rel_abs
thf(fact_51_Quotient3__rel__rep,axiom,
    ! [A: $tType,B: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,A3: B,B3: B] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( R @ ( Rep @ A3 ) @ ( Rep @ B3 ) )
        = ( A3 = B3 ) ) ) ).

% Quotient3_rel_rep
thf(fact_52_Quotient3__rep__abs,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,R7: A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( R @ R7 @ R7 )
       => ( R @ ( Rep @ ( Abs @ R7 ) ) @ R7 ) ) ) ).

% Quotient3_rep_abs
thf(fact_53_Quotient3__rep__reflp,axiom,
    ! [A: $tType,B: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,A3: B] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( R @ ( Rep @ A3 ) @ ( Rep @ A3 ) ) ) ).

% Quotient3_rep_reflp
thf(fact_54_rewriteL__comp__comp,axiom,
    ! [C: $tType,B: $tType,A: $tType,D: $tType,F3: C > B,G: A > C,L: A > B,H3: D > A] :
      ( ( ( comp @ C @ B @ A @ F3 @ G )
        = L )
     => ( ( comp @ C @ B @ D @ F3 @ ( comp @ A @ C @ D @ G @ H3 ) )
        = ( comp @ A @ B @ D @ L @ H3 ) ) ) ).

% rewriteL_comp_comp
thf(fact_55_rewriteR__comp__comp,axiom,
    ! [C: $tType,D: $tType,B: $tType,A: $tType,G: C > B,H3: A > C,R7: A > B,F3: B > D] :
      ( ( ( comp @ C @ B @ A @ G @ H3 )
        = R7 )
     => ( ( comp @ C @ D @ A @ ( comp @ B @ D @ C @ F3 @ G ) @ H3 )
        = ( comp @ B @ D @ A @ F3 @ R7 ) ) ) ).

% rewriteR_comp_comp
thf(fact_56_rewriteL__comp__comp2,axiom,
    ! [A: $tType,C: $tType,B: $tType,D: $tType,E: $tType,F3: C > B,G: A > C,L1: D > B,L2: A > D,H3: E > A,R7: E > D] :
      ( ( ( comp @ C @ B @ A @ F3 @ G )
        = ( comp @ D @ B @ A @ L1 @ L2 ) )
     => ( ( ( comp @ A @ D @ E @ L2 @ H3 )
          = R7 )
       => ( ( comp @ C @ B @ E @ F3 @ ( comp @ A @ C @ E @ G @ H3 ) )
          = ( comp @ D @ B @ E @ L1 @ R7 ) ) ) ) ).

% rewriteL_comp_comp2
thf(fact_57_rewriteR__comp__comp2,axiom,
    ! [C: $tType,B: $tType,E: $tType,D: $tType,A: $tType,G: C > B,H3: A > C,R12: D > B,R22: A > D,F3: B > E,L: D > E] :
      ( ( ( comp @ C @ B @ A @ G @ H3 )
        = ( comp @ D @ B @ A @ R12 @ R22 ) )
     => ( ( ( comp @ B @ E @ D @ F3 @ R12 )
          = L )
       => ( ( comp @ C @ E @ A @ ( comp @ B @ E @ C @ F3 @ G ) @ H3 )
          = ( comp @ D @ E @ A @ L @ R22 ) ) ) ) ).

% rewriteR_comp_comp2
thf(fact_58_comp__eq__dest__lhs,axiom,
    ! [C: $tType,B: $tType,A: $tType,A3: C > B,B3: A > C,C3: A > B,V: A] :
      ( ( ( comp @ C @ B @ A @ A3 @ B3 )
        = C3 )
     => ( ( A3 @ ( B3 @ V ) )
        = ( C3 @ V ) ) ) ).

% comp_eq_dest_lhs
thf(fact_59_comp__eq__elim,axiom,
    ! [C: $tType,B: $tType,D: $tType,A: $tType,A3: C > B,B3: A > C,C3: D > B,D3: A > D] :
      ( ( ( comp @ C @ B @ A @ A3 @ B3 )
        = ( comp @ D @ B @ A @ C3 @ D3 ) )
     => ! [V2: A] :
          ( ( A3 @ ( B3 @ V2 ) )
          = ( C3 @ ( D3 @ V2 ) ) ) ) ).

% comp_eq_elim
thf(fact_60_comp__eq__dest,axiom,
    ! [C: $tType,B: $tType,D: $tType,A: $tType,A3: C > B,B3: A > C,C3: D > B,D3: A > D,V: A] :
      ( ( ( comp @ C @ B @ A @ A3 @ B3 )
        = ( comp @ D @ B @ A @ C3 @ D3 ) )
     => ( ( A3 @ ( B3 @ V ) )
        = ( C3 @ ( D3 @ V ) ) ) ) ).

% comp_eq_dest
thf(fact_61_comp__assoc,axiom,
    ! [B: $tType,D: $tType,C: $tType,A: $tType,F3: D > B,G: C > D,H3: A > C] :
      ( ( comp @ C @ B @ A @ ( comp @ D @ B @ C @ F3 @ G ) @ H3 )
      = ( comp @ D @ B @ A @ F3 @ ( comp @ C @ D @ A @ G @ H3 ) ) ) ).

% comp_assoc
thf(fact_62_comp__def,axiom,
    ! [A: $tType,C: $tType,B: $tType] :
      ( ( comp @ B @ C @ A )
      = ( ^ [F: B > C,G3: A > B,X3: A] : ( F @ ( G3 @ X3 ) ) ) ) ).

% comp_def
thf(fact_63_o__prs_I1_J,axiom,
    ! [C: $tType,E: $tType,A: $tType,B: $tType,F2: $tType,D: $tType,R1: A > A > $o,Abs1: A > B,Rep1: B > A,R2: C > C > $o,Abs22: C > D,Rep22: D > C,R3: E > E > $o,Abs3: E > F2,Rep3: F2 > E] :
      ( ( quotient3 @ A @ B @ R1 @ Abs1 @ Rep1 )
     => ( ( quotient3 @ C @ D @ R2 @ Abs22 @ Rep22 )
       => ( ( quotient3 @ E @ F2 @ R3 @ Abs3 @ Rep3 )
         => ( ( map_fun @ ( D > F2 ) @ ( C > E ) @ ( ( A > C ) > A > E ) @ ( ( B > D ) > B > F2 ) @ ( map_fun @ C @ D @ F2 @ E @ Abs22 @ Rep3 ) @ ( map_fun @ ( B > D ) @ ( A > C ) @ ( A > E ) @ ( B > F2 ) @ ( map_fun @ A @ B @ D @ C @ Abs1 @ Rep22 ) @ ( map_fun @ B @ A @ E @ F2 @ Rep1 @ Abs3 ) ) @ ( comp @ C @ E @ A ) )
            = ( comp @ D @ F2 @ B ) ) ) ) ) ).

% o_prs(1)
thf(fact_64_tllist_Obi__total__rel,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,R1: A > C > $o,R2: B > D > $o] :
      ( ( bi_total @ A @ C @ R1 )
     => ( ( bi_total @ B @ D @ R2 )
       => ( bi_total @ ( tLList446370796tllist @ A @ B ) @ ( tLList446370796tllist @ C @ D ) @ ( tLList1380991092t_all2 @ A @ C @ B @ D @ R1 @ R2 ) ) ) ) ).

% tllist.bi_total_rel
thf(fact_65_map__fun_Ocompositionality,axiom,
    ! [D: $tType,F2: $tType,C: $tType,E: $tType,B: $tType,A: $tType,F3: E > C,G: D > F2,H3: C > A,I: B > D,Fun: A > B] :
      ( ( map_fun @ E @ C @ D @ F2 @ F3 @ G @ ( map_fun @ C @ A @ B @ D @ H3 @ I @ Fun ) )
      = ( map_fun @ E @ A @ B @ F2 @ ( comp @ C @ A @ E @ H3 @ F3 ) @ ( comp @ D @ F2 @ B @ G @ I ) @ Fun ) ) ).

% map_fun.compositionality
thf(fact_66_map__fun__def,axiom,
    ! [B: $tType,D: $tType,A: $tType,C: $tType] :
      ( ( map_fun @ C @ A @ B @ D )
      = ( ^ [F: C > A,G3: B > D,H2: A > B] : ( comp @ A @ D @ C @ ( comp @ B @ D @ A @ G3 @ H2 ) @ F ) ) ) ).

% map_fun_def
thf(fact_67_fun__quotient3,axiom,
    ! [A: $tType,B: $tType,C: $tType,D: $tType,R1: A > A > $o,Abs12: A > B,Rep12: B > A,R2: C > C > $o,Abs23: C > D,Rep23: D > C] :
      ( ( quotient3 @ A @ B @ R1 @ Abs12 @ Rep12 )
     => ( ( quotient3 @ C @ D @ R2 @ Abs23 @ Rep23 )
       => ( quotient3 @ ( A > C ) @ ( B > D ) @ ( bNF_rel_fun @ A @ A @ C @ C @ R1 @ R2 ) @ ( map_fun @ B @ A @ C @ D @ Rep12 @ Abs23 ) @ ( map_fun @ A @ B @ D @ C @ Abs12 @ Rep23 ) ) ) ) ).

% fun_quotient3
thf(fact_68_apply__rspQ3,axiom,
    ! [B: $tType,C: $tType,A: $tType,R1: A > A > $o,Abs1: A > B,Rep1: B > A,R2: C > C > $o,F3: A > C,G: A > C,X2: A,Y4: A] :
      ( ( quotient3 @ A @ B @ R1 @ Abs1 @ Rep1 )
     => ( ( bNF_rel_fun @ A @ A @ C @ C @ R1 @ R2 @ F3 @ G )
       => ( ( R1 @ X2 @ Y4 )
         => ( R2 @ ( F3 @ X2 ) @ ( G @ Y4 ) ) ) ) ) ).

% apply_rspQ3
thf(fact_69_apply__rspQ3_H_H,axiom,
    ! [C: $tType,A: $tType,B: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,S2: C > C > $o,F3: A > C,X2: B] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( bNF_rel_fun @ A @ A @ C @ C @ R @ S2 @ F3 @ F3 )
       => ( S2 @ ( F3 @ ( Rep @ X2 ) ) @ ( F3 @ ( Rep @ X2 ) ) ) ) ) ).

% apply_rspQ3''
thf(fact_70_let__prs,axiom,
    ! [C: $tType,A: $tType,B: $tType,D: $tType,R1: A > A > $o,Abs1: A > B,Rep1: B > A,R2: C > C > $o,Abs22: C > D,Rep22: D > C] :
      ( ( quotient3 @ A @ B @ R1 @ Abs1 @ Rep1 )
     => ( ( quotient3 @ C @ D @ R2 @ Abs22 @ Rep22 )
       => ( ( map_fun @ D @ C @ ( ( C > A ) > A ) @ ( ( D > B ) > B ) @ Rep22 @ ( map_fun @ ( D > B ) @ ( C > A ) @ A @ B @ ( map_fun @ C @ D @ B @ A @ Abs22 @ Rep1 ) @ Abs1 )
            @ ^ [S: C,F: C > A] : ( F @ S ) )
          = ( ^ [S: D,F: D > B] : ( F @ S ) ) ) ) ) ).

% let_prs
thf(fact_71_quot__rel__rsp,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( bNF_rel_fun @ A @ A @ ( A > $o ) @ ( A > $o ) @ R
        @ ( bNF_rel_fun @ A @ A @ $o @ $o @ R
          @ ^ [Y2: $o,Z: $o] : Y2 = Z )
        @ R
        @ R ) ) ).

% quot_rel_rsp
thf(fact_72_relcompp__transfer,axiom,
    ! [C: $tType,A: $tType,E: $tType,F2: $tType,B: $tType,D: $tType,B2: A > B > $o,A2: C > D > $o,C2: E > F2 > $o] :
      ( ( bi_total @ A @ B @ B2 )
     => ( bNF_rel_fun @ ( C > A > $o ) @ ( D > B > $o ) @ ( ( A > E > $o ) > C > E > $o ) @ ( ( B > F2 > $o ) > D > F2 > $o )
        @ ( bNF_rel_fun @ C @ D @ ( A > $o ) @ ( B > $o ) @ A2
          @ ( bNF_rel_fun @ A @ B @ $o @ $o @ B2
            @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
        @ ( bNF_rel_fun @ ( A > E > $o ) @ ( B > F2 > $o ) @ ( C > E > $o ) @ ( D > F2 > $o )
          @ ( bNF_rel_fun @ A @ B @ ( E > $o ) @ ( F2 > $o ) @ B2
            @ ( bNF_rel_fun @ E @ F2 @ $o @ $o @ C2
              @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
          @ ( bNF_rel_fun @ C @ D @ ( E > $o ) @ ( F2 > $o ) @ A2
            @ ( bNF_rel_fun @ E @ F2 @ $o @ $o @ C2
              @ ^ [Y2: $o,Z: $o] : Y2 = Z ) ) )
        @ ( relcompp @ C @ A @ E )
        @ ( relcompp @ D @ B @ F2 ) ) ) ).

% relcompp_transfer
thf(fact_73_monotone__parametric,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,A2: A > B > $o,B2: C > D > $o] :
      ( ( bi_total @ A @ B @ A2 )
     => ( bNF_rel_fun @ ( A > A > $o ) @ ( B > B > $o ) @ ( ( C > C > $o ) > ( A > C ) > $o ) @ ( ( D > D > $o ) > ( B > D ) > $o )
        @ ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ A2
          @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2
            @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
        @ ( bNF_rel_fun @ ( C > C > $o ) @ ( D > D > $o ) @ ( ( A > C ) > $o ) @ ( ( B > D ) > $o )
          @ ( bNF_rel_fun @ C @ D @ ( C > $o ) @ ( D > $o ) @ B2
            @ ( bNF_rel_fun @ C @ D @ $o @ $o @ B2
              @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
          @ ( bNF_rel_fun @ ( A > C ) @ ( B > D ) @ $o @ $o @ ( bNF_rel_fun @ A @ B @ C @ D @ A2 @ B2 )
            @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
        @ ( comple1396247847notone @ A @ C )
        @ ( comple1396247847notone @ B @ D ) ) ) ).

% monotone_parametric
thf(fact_74_bex1__rel__rsp,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Absf: A > B,Repf: B > A] :
      ( ( quotient3 @ A @ B @ R @ Absf @ Repf )
     => ( bNF_rel_fun @ ( A > $o ) @ ( A > $o ) @ $o @ $o
        @ ( bNF_rel_fun @ A @ A @ $o @ $o @ R
          @ ^ [Y2: $o,Z: $o] : Y2 = Z )
        @ ^ [Y2: $o,Z: $o] : Y2 = Z
        @ ( bex1_rel @ A @ R )
        @ ( bex1_rel @ A @ R ) ) ) ).

% bex1_rel_rsp
thf(fact_75_left__total__parametric,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,A2: A > B > $o,B2: C > D > $o] :
      ( ( bi_total @ A @ B @ A2 )
     => ( ( bi_total @ C @ D @ B2 )
       => ( bNF_rel_fun @ ( A > C > $o ) @ ( B > D > $o ) @ $o @ $o
          @ ( bNF_rel_fun @ A @ B @ ( C > $o ) @ ( D > $o ) @ A2
            @ ( bNF_rel_fun @ C @ D @ $o @ $o @ B2
              @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
          @ ^ [Y2: $o,Z: $o] : Y2 = Z
          @ ( left_total @ A @ C )
          @ ( left_total @ B @ D ) ) ) ) ).

% left_total_parametric
thf(fact_76_transfer__forall__transfer_I1_J,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o] :
      ( ( bi_total @ A @ B @ A2 )
     => ( bNF_rel_fun @ ( A > $o ) @ ( B > $o ) @ $o @ $o
        @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2
          @ ^ [Y2: $o,Z: $o] : Y2 = Z )
        @ ^ [Y2: $o,Z: $o] : Y2 = Z
        @ ( transfer_forall @ A )
        @ ( transfer_forall @ B ) ) ) ).

% transfer_forall_transfer(1)
thf(fact_77_reflp__transfer_I1_J,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o] :
      ( ( bi_total @ A @ B @ A2 )
     => ( bNF_rel_fun @ ( A > A > $o ) @ ( B > B > $o ) @ $o @ $o
        @ ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ A2
          @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2
            @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
        @ ^ [Y2: $o,Z: $o] : Y2 = Z
        @ ( reflp @ A )
        @ ( reflp @ B ) ) ) ).

% reflp_transfer(1)
thf(fact_78_fun__ord__def,axiom,
    ! [C: $tType,B: $tType,A: $tType] :
      ( ( partial_fun_ord @ A @ B @ C )
      = ( ^ [Ord: A > B > $o,F: C > A,G3: C > B] :
          ! [X3: C] : ( Ord @ ( F @ X3 ) @ ( G3 @ X3 ) ) ) ) ).

% fun_ord_def
thf(fact_79_right__total__parametric,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,A2: A > B > $o,B2: C > D > $o] :
      ( ( bi_total @ A @ B @ A2 )
     => ( ( bi_total @ C @ D @ B2 )
       => ( bNF_rel_fun @ ( A > C > $o ) @ ( B > D > $o ) @ $o @ $o
          @ ( bNF_rel_fun @ A @ B @ ( C > $o ) @ ( D > $o ) @ A2
            @ ( bNF_rel_fun @ C @ D @ $o @ $o @ B2
              @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
          @ ^ [Y2: $o,Z: $o] : Y2 = Z
          @ ( right_total @ A @ C )
          @ ( right_total @ B @ D ) ) ) ) ).

% right_total_parametric
thf(fact_80_Domainp__transfer,axiom,
    ! [C: $tType,A: $tType,B: $tType,D: $tType,B2: A > B > $o,A2: C > D > $o] :
      ( ( bi_total @ A @ B @ B2 )
     => ( bNF_rel_fun @ ( C > A > $o ) @ ( D > B > $o ) @ ( C > $o ) @ ( D > $o )
        @ ( bNF_rel_fun @ C @ D @ ( A > $o ) @ ( B > $o ) @ A2
          @ ( bNF_rel_fun @ A @ B @ $o @ $o @ B2
            @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
        @ ( bNF_rel_fun @ C @ D @ $o @ $o @ A2
          @ ^ [Y2: $o,Z: $o] : Y2 = Z )
        @ ( domainp @ C @ A )
        @ ( domainp @ D @ B ) ) ) ).

% Domainp_transfer
thf(fact_81_fun_Orel__compp,axiom,
    ! [A: $tType,D: $tType,C: $tType,B: $tType,R: A > B > $o,S2: B > C > $o] :
      ( ( bNF_rel_fun @ D @ D @ A @ C
        @ ^ [Y2: D,Z: D] : Y2 = Z
        @ ( relcompp @ A @ B @ C @ R @ S2 ) )
      = ( relcompp @ ( D > A ) @ ( D > B ) @ ( D > C )
        @ ( bNF_rel_fun @ D @ D @ A @ B
          @ ^ [Y2: D,Z: D] : Y2 = Z
          @ R )
        @ ( bNF_rel_fun @ D @ D @ B @ C
          @ ^ [Y2: D,Z: D] : Y2 = Z
          @ S2 ) ) ) ).

% fun.rel_compp
thf(fact_82_pcr__Domainp__par__left__total,axiom,
    ! [A: $tType,B: $tType,C: $tType,B2: A > B > $o,P: A > $o,A2: C > A > $o,P2: C > $o] :
      ( ( ( domainp @ A @ B @ B2 )
        = P )
     => ( ( left_total @ C @ A @ A2 )
       => ( ( bNF_rel_fun @ C @ A @ $o @ $o @ A2
            @ ^ [Y2: $o,Z: $o] : Y2 = Z
            @ P2
            @ P )
         => ( ( domainp @ C @ B @ ( relcompp @ C @ A @ B @ A2 @ B2 ) )
            = P2 ) ) ) ) ).

% pcr_Domainp_par_left_total
thf(fact_83_fun_Orel__reflp,axiom,
    ! [D: $tType,A: $tType,R: A > A > $o] :
      ( ( reflp @ A @ R )
     => ( reflp @ ( D > A )
        @ ( bNF_rel_fun @ D @ D @ A @ A
          @ ^ [Y2: D,Z: D] : Y2 = Z
          @ R ) ) ) ).

% fun.rel_reflp
thf(fact_84_tllist_Oright__total__rel,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,R1: A > C > $o,R2: B > D > $o] :
      ( ( right_total @ A @ C @ R1 )
     => ( ( right_total @ B @ D @ R2 )
       => ( right_total @ ( tLList446370796tllist @ A @ B ) @ ( tLList446370796tllist @ C @ D ) @ ( tLList1380991092t_all2 @ A @ C @ B @ D @ R1 @ R2 ) ) ) ) ).

% tllist.right_total_rel
thf(fact_85_tllist_Orel__reflp,axiom,
    ! [A: $tType,B: $tType,R1: A > A > $o,R2: B > B > $o] :
      ( ( reflp @ A @ R1 )
     => ( ( reflp @ B @ R2 )
       => ( reflp @ ( tLList446370796tllist @ A @ B ) @ ( tLList1380991092t_all2 @ A @ A @ B @ B @ R1 @ R2 ) ) ) ) ).

% tllist.rel_reflp
thf(fact_86_tllist_Orel__compp,axiom,
    ! [B: $tType,A: $tType,C: $tType,E: $tType,F2: $tType,D: $tType,R1: A > C > $o,S1: C > E > $o,R2: B > D > $o,S22: D > F2 > $o] :
      ( ( tLList1380991092t_all2 @ A @ E @ B @ F2 @ ( relcompp @ A @ C @ E @ R1 @ S1 ) @ ( relcompp @ B @ D @ F2 @ R2 @ S22 ) )
      = ( relcompp @ ( tLList446370796tllist @ A @ B ) @ ( tLList446370796tllist @ C @ D ) @ ( tLList446370796tllist @ E @ F2 ) @ ( tLList1380991092t_all2 @ A @ C @ B @ D @ R1 @ R2 ) @ ( tLList1380991092t_all2 @ C @ E @ D @ F2 @ S1 @ S22 ) ) ) ).

% tllist.rel_compp
thf(fact_87_pcr__Domainp__total,axiom,
    ! [A: $tType,B: $tType,C: $tType,B2: A > B > $o,A2: C > A > $o,P: C > $o] :
      ( ( left_total @ A @ B @ B2 )
     => ( ( ( domainp @ C @ A @ A2 )
          = P )
       => ( ( domainp @ C @ B @ ( relcompp @ C @ A @ B @ A2 @ B2 ) )
          = P ) ) ) ).

% pcr_Domainp_total
thf(fact_88_right__total__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( right_total @ A @ B )
      = ( ^ [R5: A > B > $o] :
          ! [Y3: B] :
          ? [X3: A] : ( R5 @ X3 @ Y3 ) ) ) ).

% right_total_def
thf(fact_89_right__total__eq,axiom,
    ! [A: $tType] :
      ( right_total @ A @ A
      @ ^ [Y2: A,Z: A] : Y2 = Z ) ).

% right_total_eq
thf(fact_90_right__total__OO,axiom,
    ! [A: $tType,C: $tType,B: $tType,A2: A > B > $o,B2: B > C > $o] :
      ( ( right_total @ A @ B @ A2 )
     => ( ( right_total @ B @ C @ B2 )
       => ( right_total @ A @ C @ ( relcompp @ A @ B @ C @ A2 @ B2 ) ) ) ) ).

% right_total_OO
thf(fact_91_left__total__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( left_total @ A @ B )
      = ( ^ [R5: A > B > $o] :
          ! [X3: A] :
            ( ^ [P3: B > $o] :
              ? [X5: B] : ( P3 @ X5 )
            @ ( R5 @ X3 ) ) ) ) ).

% left_total_def
thf(fact_92_left__total__eq,axiom,
    ! [A: $tType] :
      ( left_total @ A @ A
      @ ^ [Y2: A,Z: A] : Y2 = Z ) ).

% left_total_eq
thf(fact_93_left__total__OO,axiom,
    ! [A: $tType,C: $tType,B: $tType,R: A > B > $o,S2: B > C > $o] :
      ( ( left_total @ A @ B @ R )
     => ( ( left_total @ B @ C @ S2 )
       => ( left_total @ A @ C @ ( relcompp @ A @ B @ C @ R @ S2 ) ) ) ) ).

% left_total_OO
thf(fact_94_bex1__rel__aux2,axiom,
    ! [A: $tType,R: A > A > $o,X2: A > $o,Y4: A > $o] :
      ( ! [Xa2: A,Ya2: A] :
          ( ( R @ Xa2 @ Ya2 )
         => ( ( X2 @ Xa2 )
            = ( Y4 @ Ya2 ) ) )
     => ( ( bex1_rel @ A @ R @ Y4 )
       => ( bex1_rel @ A @ R @ X2 ) ) ) ).

% bex1_rel_aux2
thf(fact_95_right__totalI,axiom,
    ! [A: $tType,B: $tType,A2: B > A > $o] :
      ( ! [Y: A] :
        ? [X6: B] : ( A2 @ X6 @ Y )
     => ( right_total @ B @ A @ A2 ) ) ).

% right_totalI
thf(fact_96_right__totalE,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o,Y4: B] :
      ( ( right_total @ A @ B @ A2 )
     => ~ ! [X: A] :
            ~ ( A2 @ X @ Y4 ) ) ).

% right_totalE
thf(fact_97_Domainp__refl,axiom,
    ! [B: $tType,A: $tType] :
      ( ( domainp @ A @ B )
      = ( domainp @ A @ B ) ) ).

% Domainp_refl
thf(fact_98_bex1__rel__aux,axiom,
    ! [A: $tType,R: A > A > $o,X2: A > $o,Y4: A > $o] :
      ( ! [Xa2: A,Ya2: A] :
          ( ( R @ Xa2 @ Ya2 )
         => ( ( X2 @ Xa2 )
            = ( Y4 @ Ya2 ) ) )
     => ( ( bex1_rel @ A @ R @ X2 )
       => ( bex1_rel @ A @ R @ Y4 ) ) ) ).

% bex1_rel_aux
thf(fact_99_left__totalI,axiom,
    ! [B: $tType,A: $tType,R: A > B > $o] :
      ( ! [X: A] :
        ? [X12: B] : ( R @ X @ X12 )
     => ( left_total @ A @ B @ R ) ) ).

% left_totalI
thf(fact_100_left__totalE,axiom,
    ! [A: $tType,B: $tType,R: A > B > $o] :
      ( ( left_total @ A @ B @ R )
     => ! [X6: A] :
        ? [X13: B] : ( R @ X6 @ X13 ) ) ).

% left_totalE
thf(fact_101_Domainp__iff,axiom,
    ! [B: $tType,A: $tType] :
      ( ( domainp @ A @ B )
      = ( ^ [T2: A > B > $o,X3: A] :
            ( ^ [P3: B > $o] :
              ? [X5: B] : ( P3 @ X5 )
            @ ( T2 @ X3 ) ) ) ) ).

% Domainp_iff
thf(fact_102_eq__comp__r,axiom,
    ! [A: $tType,R: A > A > $o] :
      ( ( relcompp @ A @ A @ A
        @ ^ [Y2: A,Z: A] : Y2 = Z
        @ ( relcompp @ A @ A @ A @ R
          @ ^ [Y2: A,Z: A] : Y2 = Z ) )
      = R ) ).

% eq_comp_r
thf(fact_103_bi__total__alt__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( bi_total @ A @ B )
      = ( ^ [A6: A > B > $o] :
            ( ( left_total @ A @ B @ A6 )
            & ( right_total @ A @ B @ A6 ) ) ) ) ).

% bi_total_alt_def
thf(fact_104_bi__totalI,axiom,
    ! [B: $tType,A: $tType,R: A > B > $o] :
      ( ( left_total @ A @ B @ R )
     => ( ( right_total @ A @ B @ R )
       => ( bi_total @ A @ B @ R ) ) ) ).

% bi_totalI
thf(fact_105_tllist_Oleft__total__rel,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,R1: A > C > $o,R2: B > D > $o] :
      ( ( left_total @ A @ C @ R1 )
     => ( ( left_total @ B @ D @ R2 )
       => ( left_total @ ( tLList446370796tllist @ A @ B ) @ ( tLList446370796tllist @ C @ D ) @ ( tLList1380991092t_all2 @ A @ C @ B @ D @ R1 @ R2 ) ) ) ) ).

% tllist.left_total_rel
thf(fact_106_transfer__forall__transfer_I3_J,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o] :
      ( ( right_total @ A @ B @ A2 )
     => ( bNF_rel_fun @ ( A > $o ) @ ( B > $o ) @ $o @ $o @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2 @ (=>) ) @ (=>) @ ( transfer_forall @ A ) @ ( transfer_forall @ B ) ) ) ).

% transfer_forall_transfer(3)
thf(fact_107_transfer__forall__transfer_I2_J,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o] :
      ( ( right_total @ A @ B @ A2 )
     => ( bNF_rel_fun @ ( A > $o ) @ ( B > $o ) @ $o @ $o
        @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2
          @ ^ [Y2: $o,Z: $o] : Y2 = Z )
        @ (=>)
        @ ( transfer_forall @ A )
        @ ( transfer_forall @ B ) ) ) ).

% transfer_forall_transfer(2)
thf(fact_108_reflp__transfer_I3_J,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o] :
      ( ( right_total @ A @ B @ A2 )
     => ( bNF_rel_fun @ ( A > A > $o ) @ ( B > B > $o ) @ $o @ $o
        @ ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ A2
          @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2
            @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
        @ (=>)
        @ ( reflp @ A )
        @ ( reflp @ B ) ) ) ).

% reflp_transfer(3)
thf(fact_109_reflp__transfer_I2_J,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o] :
      ( ( right_total @ A @ B @ A2 )
     => ( bNF_rel_fun @ ( A > A > $o ) @ ( B > B > $o ) @ $o @ $o @ ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ A2 @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2 @ (=>) ) ) @ (=>) @ ( reflp @ A ) @ ( reflp @ B ) ) ) ).

% reflp_transfer(2)
thf(fact_110_bi__total__OO,axiom,
    ! [A: $tType,C: $tType,B: $tType,A2: A > B > $o,B2: B > C > $o] :
      ( ( bi_total @ A @ B @ A2 )
     => ( ( bi_total @ B @ C @ B2 )
       => ( bi_total @ A @ C @ ( relcompp @ A @ B @ C @ A2 @ B2 ) ) ) ) ).

% bi_total_OO
thf(fact_111_tllist_ODomainp__rel,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,R1: A > C > $o,R2: B > D > $o] :
      ( ( domainp @ ( tLList446370796tllist @ A @ B ) @ ( tLList446370796tllist @ C @ D ) @ ( tLList1380991092t_all2 @ A @ C @ B @ D @ R1 @ R2 ) )
      = ( tLList11265572tllist @ A @ B @ ( domainp @ A @ C @ R1 ) @ ( domainp @ B @ D @ R2 ) ) ) ).

% tllist.Domainp_rel
thf(fact_112_OOO__eq__quotient3,axiom,
    ! [A: $tType,B: $tType,C: $tType,R1: A > A > $o,Abs1: A > B,Rep1: B > A,Abs22: B > C,Rep22: C > B] :
      ( ( quotient3 @ A @ B @ R1 @ Abs1 @ Rep1 )
     => ( ( quotient3 @ B @ C
          @ ^ [Y2: B,Z: B] : Y2 = Z
          @ Abs22
          @ Rep22 )
       => ( quotient3 @ A @ C
          @ ( relcompp @ A @ A @ A @ R1
            @ ( relcompp @ A @ A @ A
              @ ^ [Y2: A,Z: A] : Y2 = Z
              @ R1 ) )
          @ ( comp @ B @ C @ A @ Abs22 @ Abs1 )
          @ ( comp @ B @ A @ C @ Rep1 @ Rep22 ) ) ) ) ).

% OOO_eq_quotient3
thf(fact_113_OOO__quotient3,axiom,
    ! [A: $tType,B: $tType,C: $tType,R1: A > A > $o,Abs1: A > B,Rep1: B > A,R2: B > B > $o,Abs22: B > C,Rep22: C > B,R23: A > A > $o] :
      ( ( quotient3 @ A @ B @ R1 @ Abs1 @ Rep1 )
     => ( ( quotient3 @ B @ C @ R2 @ Abs22 @ Rep22 )
       => ( ! [X: A,Y: A] :
              ( ( R23 @ X @ Y )
             => ( ( R1 @ X @ X )
               => ( ( R1 @ Y @ Y )
                 => ( R2 @ ( Abs1 @ X ) @ ( Abs1 @ Y ) ) ) ) )
         => ( ! [X: B,Y: B] :
                ( ( R2 @ X @ Y )
               => ( R23 @ ( Rep1 @ X ) @ ( Rep1 @ Y ) ) )
           => ( quotient3 @ A @ C @ ( relcompp @ A @ A @ A @ R1 @ ( relcompp @ A @ A @ A @ R23 @ R1 ) ) @ ( comp @ B @ C @ A @ Abs22 @ Abs1 ) @ ( comp @ B @ A @ C @ Rep1 @ Rep22 ) ) ) ) ) ) ).

% OOO_quotient3
thf(fact_114_Domainp__forall__transfer,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o] :
      ( ( right_total @ A @ B @ A2 )
     => ( bNF_rel_fun @ ( A > $o ) @ ( B > $o ) @ $o @ $o
        @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2
          @ ^ [Y2: $o,Z: $o] : Y2 = Z )
        @ ^ [Y2: $o,Z: $o] : Y2 = Z
        @ ( transfer_bforall @ A @ ( domainp @ A @ B @ A2 ) )
        @ ( transfer_forall @ B ) ) ) ).

% Domainp_forall_transfer
thf(fact_115_reflp__transfer_I5_J,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o] :
      ( ( bi_total @ A @ B @ A2 )
     => ( bNF_rel_fun @ ( A > A > $o ) @ ( B > B > $o ) @ $o @ $o
        @ ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ A2
          @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2
            @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
        @ rev_implies
        @ ( reflp @ A )
        @ ( reflp @ B ) ) ) ).

% reflp_transfer(5)
thf(fact_116_reflp__transfer_I4_J,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o] :
      ( ( bi_total @ A @ B @ A2 )
     => ( bNF_rel_fun @ ( A > A > $o ) @ ( B > B > $o ) @ $o @ $o @ ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ A2 @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2 @ rev_implies ) ) @ rev_implies @ ( reflp @ A ) @ ( reflp @ B ) ) ) ).

% reflp_transfer(4)
thf(fact_117_transfer__forall__transfer_I4_J,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o] :
      ( ( bi_total @ A @ B @ A2 )
     => ( bNF_rel_fun @ ( A > $o ) @ ( B > $o ) @ $o @ $o
        @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2
          @ ^ [Y2: $o,Z: $o] : Y2 = Z )
        @ rev_implies
        @ ( transfer_forall @ A )
        @ ( transfer_forall @ B ) ) ) ).

% transfer_forall_transfer(4)
thf(fact_118_transfer__forall__transfer_I5_J,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o] :
      ( ( bi_total @ A @ B @ A2 )
     => ( bNF_rel_fun @ ( A > $o ) @ ( B > $o ) @ $o @ $o @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2 @ rev_implies ) @ rev_implies @ ( transfer_forall @ A ) @ ( transfer_forall @ B ) ) ) ).

% transfer_forall_transfer(5)
thf(fact_119_reflpD,axiom,
    ! [A: $tType,R7: A > A > $o,X2: A] :
      ( ( reflp @ A @ R7 )
     => ( R7 @ X2 @ X2 ) ) ).

% reflpD
thf(fact_120_rev__implies__def,axiom,
    ( rev_implies
    = ( ^ [X3: $o,Y3: $o] :
          ( Y3
         => X3 ) ) ) ).

% rev_implies_def
thf(fact_121_relcompp_OrelcompI,axiom,
    ! [A: $tType,B: $tType,C: $tType,R7: A > B > $o,A3: A,B3: B,S4: B > C > $o,C3: C] :
      ( ( R7 @ A3 @ B3 )
     => ( ( S4 @ B3 @ C3 )
       => ( relcompp @ A @ B @ C @ R7 @ S4 @ A3 @ C3 ) ) ) ).

% relcompp.relcompI
thf(fact_122_relcompp_Oinducts,axiom,
    ! [B: $tType,A: $tType,C: $tType,R7: A > B > $o,S4: B > C > $o,X1: A,X22: C,P: A > C > $o] :
      ( ( relcompp @ A @ B @ C @ R7 @ S4 @ X1 @ X22 )
     => ( ! [A4: A,B4: B,C4: C] :
            ( ( R7 @ A4 @ B4 )
           => ( ( S4 @ B4 @ C4 )
             => ( P @ A4 @ C4 ) ) )
       => ( P @ X1 @ X22 ) ) ) ).

% relcompp.inducts
thf(fact_123_relcompp__assoc,axiom,
    ! [A: $tType,D: $tType,B: $tType,C: $tType,R7: A > D > $o,S4: D > C > $o,T3: C > B > $o] :
      ( ( relcompp @ A @ C @ B @ ( relcompp @ A @ D @ C @ R7 @ S4 ) @ T3 )
      = ( relcompp @ A @ D @ B @ R7 @ ( relcompp @ D @ C @ B @ S4 @ T3 ) ) ) ).

% relcompp_assoc
thf(fact_124_relcompp__apply,axiom,
    ! [C: $tType,B: $tType,A: $tType] :
      ( ( relcompp @ A @ B @ C )
      = ( ^ [R5: A > B > $o,S5: B > C > $o,A5: A,C5: C] :
          ? [B5: B] :
            ( ( R5 @ A5 @ B5 )
            & ( S5 @ B5 @ C5 ) ) ) ) ).

% relcompp_apply
thf(fact_125_relcompp_Osimps,axiom,
    ! [C: $tType,B: $tType,A: $tType] :
      ( ( relcompp @ A @ B @ C )
      = ( ^ [R6: A > B > $o,S: B > C > $o,A1: A,A22: C] :
          ? [A5: A,B5: B,C5: C] :
            ( ( A1 = A5 )
            & ( A22 = C5 )
            & ( R6 @ A5 @ B5 )
            & ( S @ B5 @ C5 ) ) ) ) ).

% relcompp.simps
thf(fact_126_relcompp_Ocases,axiom,
    ! [A: $tType,B: $tType,C: $tType,R7: A > B > $o,S4: B > C > $o,A12: A,A23: C] :
      ( ( relcompp @ A @ B @ C @ R7 @ S4 @ A12 @ A23 )
     => ~ ! [B4: B] :
            ( ( R7 @ A12 @ B4 )
           => ~ ( S4 @ B4 @ A23 ) ) ) ).

% relcompp.cases
thf(fact_127_relcomppE,axiom,
    ! [A: $tType,B: $tType,C: $tType,R7: A > B > $o,S4: B > C > $o,A3: A,C3: C] :
      ( ( relcompp @ A @ B @ C @ R7 @ S4 @ A3 @ C3 )
     => ~ ! [B4: B] :
            ( ( R7 @ A3 @ B4 )
           => ~ ( S4 @ B4 @ C3 ) ) ) ).

% relcomppE
thf(fact_128_eq__OO,axiom,
    ! [B: $tType,A: $tType,R: A > B > $o] :
      ( ( relcompp @ A @ A @ B
        @ ^ [Y2: A,Z: A] : Y2 = Z
        @ R )
      = R ) ).

% eq_OO
thf(fact_129_OO__eq,axiom,
    ! [B: $tType,A: $tType,R: A > B > $o] :
      ( ( relcompp @ A @ B @ B @ R
        @ ^ [Y2: B,Z: B] : Y2 = Z )
      = R ) ).

% OO_eq
thf(fact_130_Domainp_Oinducts,axiom,
    ! [B: $tType,A: $tType,R7: A > B > $o,X2: A,P: A > $o] :
      ( ( domainp @ A @ B @ R7 @ X2 )
     => ( ! [A4: A,B4: B] :
            ( ( R7 @ A4 @ B4 )
           => ( P @ A4 ) )
       => ( P @ X2 ) ) ) ).

% Domainp.inducts
thf(fact_131_Domainp_ODomainI,axiom,
    ! [B: $tType,A: $tType,R7: A > B > $o,A3: A,B3: B] :
      ( ( R7 @ A3 @ B3 )
     => ( domainp @ A @ B @ R7 @ A3 ) ) ).

% Domainp.DomainI
thf(fact_132_Domainp_Osimps,axiom,
    ! [B: $tType,A: $tType] :
      ( ( domainp @ A @ B )
      = ( ^ [R6: A > B > $o,A5: A] :
          ? [B5: A,C5: B] :
            ( ( A5 = B5 )
            & ( R6 @ B5 @ C5 ) ) ) ) ).

% Domainp.simps
thf(fact_133_Domainp_Ocases,axiom,
    ! [A: $tType,B: $tType,R7: A > B > $o,A3: A] :
      ( ( domainp @ A @ B @ R7 @ A3 )
     => ~ ! [B4: B] :
            ~ ( R7 @ A3 @ B4 ) ) ).

% Domainp.cases
thf(fact_134_DomainpE,axiom,
    ! [A: $tType,B: $tType,R7: A > B > $o,A3: A] :
      ( ( domainp @ A @ B @ R7 @ A3 )
     => ~ ! [B4: B] :
            ~ ( R7 @ A3 @ B4 ) ) ).

% DomainpE
thf(fact_135_reflp__mono,axiom,
    ! [A: $tType,R: A > A > $o,Q: A > A > $o] :
      ( ( reflp @ A @ R )
     => ( ! [X: A,Y: A] :
            ( ( R @ X @ Y )
           => ( Q @ X @ Y ) )
       => ( reflp @ A @ Q ) ) ) ).

% reflp_mono
thf(fact_136_reflp__def,axiom,
    ! [A: $tType] :
      ( ( reflp @ A )
      = ( ^ [R6: A > A > $o] :
          ! [X3: A] : ( R6 @ X3 @ X3 ) ) ) ).

% reflp_def
thf(fact_137_reflpI,axiom,
    ! [A: $tType,R7: A > A > $o] :
      ( ! [X: A] : ( R7 @ X @ X )
     => ( reflp @ A @ R7 ) ) ).

% reflpI
thf(fact_138_reflpE,axiom,
    ! [A: $tType,R7: A > A > $o,X2: A] :
      ( ( reflp @ A @ R7 )
     => ( R7 @ X2 @ X2 ) ) ).

% reflpE
thf(fact_139_DEADID_Orel__reflp,axiom,
    ! [A: $tType] :
      ( reflp @ A
      @ ^ [Y2: A,Z: A] : Y2 = Z ) ).

% DEADID.rel_reflp
thf(fact_140_nchotomy__relcomppE,axiom,
    ! [C: $tType,B: $tType,A: $tType,D: $tType,F3: B > A,R7: C > A > $o,S4: A > D > $o,A3: C,C3: D] :
      ( ! [Y: A] :
        ? [X6: B] :
          ( Y
          = ( F3 @ X6 ) )
     => ( ( relcompp @ C @ A @ D @ R7 @ S4 @ A3 @ C3 )
       => ~ ! [B4: B] :
              ( ( R7 @ A3 @ ( F3 @ B4 ) )
             => ~ ( S4 @ ( F3 @ B4 ) @ C3 ) ) ) ) ).

% nchotomy_relcomppE
thf(fact_141_pos__fun__distr,axiom,
    ! [E: $tType,C: $tType,A: $tType,B: $tType,D: $tType,F2: $tType,R: A > E > $o,S2: B > F2 > $o,R8: E > C > $o,S6: F2 > D > $o] : ( ord_less_eq @ ( ( A > B ) > ( C > D ) > $o ) @ ( relcompp @ ( A > B ) @ ( E > F2 ) @ ( C > D ) @ ( bNF_rel_fun @ A @ E @ B @ F2 @ R @ S2 ) @ ( bNF_rel_fun @ E @ C @ F2 @ D @ R8 @ S6 ) ) @ ( bNF_rel_fun @ A @ C @ B @ D @ ( relcompp @ A @ E @ C @ R @ R8 ) @ ( relcompp @ B @ F2 @ D @ S2 @ S6 ) ) ) ).

% pos_fun_distr
thf(fact_142_monotone__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( comple1396247847notone @ A @ B )
      = ( ^ [Orda: A > A > $o,Ordb: B > B > $o,F: A > B] :
          ! [X3: A,Y3: A] :
            ( ( Orda @ X3 @ Y3 )
           => ( Ordb @ ( F @ X3 ) @ ( F @ Y3 ) ) ) ) ) ).

% monotone_def
thf(fact_143_relcompp__mono,axiom,
    ! [A: $tType,C: $tType,B: $tType,R9: A > B > $o,R7: A > B > $o,S7: B > C > $o,S4: B > C > $o] :
      ( ( ord_less_eq @ ( A > B > $o ) @ R9 @ R7 )
     => ( ( ord_less_eq @ ( B > C > $o ) @ S7 @ S4 )
       => ( ord_less_eq @ ( A > C > $o ) @ ( relcompp @ A @ B @ C @ R9 @ S7 ) @ ( relcompp @ A @ B @ C @ R7 @ S4 ) ) ) ) ).

% relcompp_mono
thf(fact_144_leq__OOI,axiom,
    ! [A: $tType,R: A > A > $o] :
      ( ( R
        = ( ^ [Y2: A,Z: A] : Y2 = Z ) )
     => ( ord_less_eq @ ( A > A > $o ) @ R @ ( relcompp @ A @ A @ A @ R @ R ) ) ) ).

% leq_OOI
thf(fact_145_reflp__eq,axiom,
    ! [A: $tType] :
      ( ( reflp @ A )
      = ( ord_less_eq @ ( A > A > $o )
        @ ^ [Y2: A,Z: A] : Y2 = Z ) ) ).

% reflp_eq
thf(fact_146_reflp__ge__eq,axiom,
    ! [A: $tType,R: A > A > $o] :
      ( ( reflp @ A @ R )
     => ( ord_less_eq @ ( A > A > $o )
        @ ^ [Y2: A,Z: A] : Y2 = Z
        @ R ) ) ).

% reflp_ge_eq
thf(fact_147_tllist_Orel__mono,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,R1: A > C > $o,R1a: A > C > $o,R2: B > D > $o,R2a: B > D > $o] :
      ( ( ord_less_eq @ ( A > C > $o ) @ R1 @ R1a )
     => ( ( ord_less_eq @ ( B > D > $o ) @ R2 @ R2a )
       => ( ord_less_eq @ ( ( tLList446370796tllist @ A @ B ) > ( tLList446370796tllist @ C @ D ) > $o ) @ ( tLList1380991092t_all2 @ A @ C @ B @ D @ R1 @ R2 ) @ ( tLList1380991092t_all2 @ A @ C @ B @ D @ R1a @ R2a ) ) ) ) ).

% tllist.rel_mono
thf(fact_148_predicate2D__conj,axiom,
    ! [A: $tType,B: $tType,P: A > B > $o,Q: A > B > $o,R: $o,X2: A,Y4: B] :
      ( ( ( ord_less_eq @ ( A > B > $o ) @ P @ Q )
        & R )
     => ( R
        & ( ( P @ X2 @ Y4 )
         => ( Q @ X2 @ Y4 ) ) ) ) ).

% predicate2D_conj
thf(fact_149_refl__ge__eq,axiom,
    ! [A: $tType,R: A > A > $o] :
      ( ! [X: A] : ( R @ X @ X )
     => ( ord_less_eq @ ( A > A > $o )
        @ ^ [Y2: A,Z: A] : Y2 = Z
        @ R ) ) ).

% refl_ge_eq
thf(fact_150_ge__eq__refl,axiom,
    ! [A: $tType,R: A > A > $o,X2: A] :
      ( ( ord_less_eq @ ( A > A > $o )
        @ ^ [Y2: A,Z: A] : Y2 = Z
        @ R )
     => ( R @ X2 @ X2 ) ) ).

% ge_eq_refl
thf(fact_151_fun_Orel__mono,axiom,
    ! [D: $tType,B: $tType,A: $tType,R: A > B > $o,Ra: A > B > $o] :
      ( ( ord_less_eq @ ( A > B > $o ) @ R @ Ra )
     => ( ord_less_eq @ ( ( D > A ) > ( D > B ) > $o )
        @ ( bNF_rel_fun @ D @ D @ A @ B
          @ ^ [Y2: D,Z: D] : Y2 = Z
          @ R )
        @ ( bNF_rel_fun @ D @ D @ A @ B
          @ ^ [Y2: D,Z: D] : Y2 = Z
          @ Ra ) ) ) ).

% fun.rel_mono
thf(fact_152_fun__mono,axiom,
    ! [A: $tType,B: $tType,D: $tType,C: $tType,C2: A > B > $o,A2: A > B > $o,B2: C > D > $o,D2: C > D > $o] :
      ( ( ord_less_eq @ ( A > B > $o ) @ C2 @ A2 )
     => ( ( ord_less_eq @ ( C > D > $o ) @ B2 @ D2 )
       => ( ord_less_eq @ ( ( A > C ) > ( B > D ) > $o ) @ ( bNF_rel_fun @ A @ B @ C @ D @ A2 @ B2 ) @ ( bNF_rel_fun @ A @ B @ C @ D @ C2 @ D2 ) ) ) ) ).

% fun_mono
thf(fact_153_type__copy__map__cong0,axiom,
    ! [B: $tType,D: $tType,E: $tType,A: $tType,C: $tType,M: B > A,G: C > B,X2: C,N: D > A,H3: C > D,F3: A > E] :
      ( ( ( M @ ( G @ X2 ) )
        = ( N @ ( H3 @ X2 ) ) )
     => ( ( comp @ B @ E @ C @ ( comp @ A @ E @ B @ F3 @ M ) @ G @ X2 )
        = ( comp @ D @ E @ C @ ( comp @ A @ E @ D @ F3 @ N ) @ H3 @ X2 ) ) ) ).

% type_copy_map_cong0
thf(fact_154_monotoneD,axiom,
    ! [B: $tType,A: $tType,Orda2: A > A > $o,Ordb2: B > B > $o,F3: A > B,X2: A,Y4: A] :
      ( ( comple1396247847notone @ A @ B @ Orda2 @ Ordb2 @ F3 )
     => ( ( Orda2 @ X2 @ Y4 )
       => ( Ordb2 @ ( F3 @ X2 ) @ ( F3 @ Y4 ) ) ) ) ).

% monotoneD
thf(fact_155_monotoneI,axiom,
    ! [B: $tType,A: $tType,Orda2: A > A > $o,Ordb2: B > B > $o,F3: A > B] :
      ( ! [X: A,Y: A] :
          ( ( Orda2 @ X @ Y )
         => ( Ordb2 @ ( F3 @ X ) @ ( F3 @ Y ) ) )
     => ( comple1396247847notone @ A @ B @ Orda2 @ Ordb2 @ F3 ) ) ).

% monotoneI
thf(fact_156_predicate2I,axiom,
    ! [B: $tType,A: $tType,P: A > B > $o,Q: A > B > $o] :
      ( ! [X: A,Y: B] :
          ( ( P @ X @ Y )
         => ( Q @ X @ Y ) )
     => ( ord_less_eq @ ( A > B > $o ) @ P @ Q ) ) ).

% predicate2I
thf(fact_157_order__refl,axiom,
    ! [A: $tType] :
      ( ( preorder @ A @ ( type2 @ A ) )
     => ! [X2: A] : ( ord_less_eq @ A @ X2 @ X2 ) ) ).

% order_refl
thf(fact_158_le__funD,axiom,
    ! [B: $tType,A: $tType] :
      ( ( ord @ B @ ( type2 @ B ) )
     => ! [F3: A > B,G: A > B,X2: A] :
          ( ( ord_less_eq @ ( A > B ) @ F3 @ G )
         => ( ord_less_eq @ B @ ( F3 @ X2 ) @ ( G @ X2 ) ) ) ) ).

% le_funD
thf(fact_159_le__funE,axiom,
    ! [B: $tType,A: $tType] :
      ( ( ord @ B @ ( type2 @ B ) )
     => ! [F3: A > B,G: A > B,X2: A] :
          ( ( ord_less_eq @ ( A > B ) @ F3 @ G )
         => ( ord_less_eq @ B @ ( F3 @ X2 ) @ ( G @ X2 ) ) ) ) ).

% le_funE
thf(fact_160_dual__order_Oantisym,axiom,
    ! [A: $tType] :
      ( ( order @ A @ ( type2 @ A ) )
     => ! [B3: A,A3: A] :
          ( ( ord_less_eq @ A @ B3 @ A3 )
         => ( ( ord_less_eq @ A @ A3 @ B3 )
           => ( A3 = B3 ) ) ) ) ).

% dual_order.antisym
thf(fact_161_dual__order_Otrans,axiom,
    ! [A: $tType] :
      ( ( order @ A @ ( type2 @ A ) )
     => ! [B3: A,A3: A,C3: A] :
          ( ( ord_less_eq @ A @ B3 @ A3 )
         => ( ( ord_less_eq @ A @ C3 @ B3 )
           => ( ord_less_eq @ A @ C3 @ A3 ) ) ) ) ).

% dual_order.trans
thf(fact_162_linorder__wlog,axiom,
    ! [A: $tType] :
      ( ( linorder @ A @ ( type2 @ A ) )
     => ! [P: A > A > $o,A3: A,B3: A] :
          ( ! [A4: A,B4: A] :
              ( ( ord_less_eq @ A @ A4 @ B4 )
             => ( P @ A4 @ B4 ) )
         => ( ! [A4: A,B4: A] :
                ( ( P @ B4 @ A4 )
               => ( P @ A4 @ B4 ) )
           => ( P @ A3 @ B3 ) ) ) ) ).

% linorder_wlog
thf(fact_163_dual__order_Orefl,axiom,
    ! [A: $tType] :
      ( ( order @ A @ ( type2 @ A ) )
     => ! [A3: A] : ( ord_less_eq @ A @ A3 @ A3 ) ) ).

% dual_order.refl
thf(fact_164_order__trans,axiom,
    ! [A: $tType] :
      ( ( preorder @ A @ ( type2 @ A ) )
     => ! [X2: A,Y4: A,Z2: A] :
          ( ( ord_less_eq @ A @ X2 @ Y4 )
         => ( ( ord_less_eq @ A @ Y4 @ Z2 )
           => ( ord_less_eq @ A @ X2 @ Z2 ) ) ) ) ).

% order_trans
thf(fact_165_order__class_Oorder_Oantisym,axiom,
    ! [A: $tType] :
      ( ( order @ A @ ( type2 @ A ) )
     => ! [A3: A,B3: A] :
          ( ( ord_less_eq @ A @ A3 @ B3 )
         => ( ( ord_less_eq @ A @ B3 @ A3 )
           => ( A3 = B3 ) ) ) ) ).

% order_class.order.antisym
thf(fact_166_ord__le__eq__trans,axiom,
    ! [A: $tType] :
      ( ( ord @ A @ ( type2 @ A ) )
     => ! [A3: A,B3: A,C3: A] :
          ( ( ord_less_eq @ A @ A3 @ B3 )
         => ( ( B3 = C3 )
           => ( ord_less_eq @ A @ A3 @ C3 ) ) ) ) ).

% ord_le_eq_trans
thf(fact_167_ord__eq__le__trans,axiom,
    ! [A: $tType] :
      ( ( ord @ A @ ( type2 @ A ) )
     => ! [A3: A,B3: A,C3: A] :
          ( ( A3 = B3 )
         => ( ( ord_less_eq @ A @ B3 @ C3 )
           => ( ord_less_eq @ A @ A3 @ C3 ) ) ) ) ).

% ord_eq_le_trans
thf(fact_168_antisym__conv,axiom,
    ! [A: $tType] :
      ( ( order @ A @ ( type2 @ A ) )
     => ! [Y4: A,X2: A] :
          ( ( ord_less_eq @ A @ Y4 @ X2 )
         => ( ( ord_less_eq @ A @ X2 @ Y4 )
            = ( X2 = Y4 ) ) ) ) ).

% antisym_conv
thf(fact_169_le__cases3,axiom,
    ! [A: $tType] :
      ( ( linorder @ A @ ( type2 @ A ) )
     => ! [X2: A,Y4: A,Z2: A] :
          ( ( ( ord_less_eq @ A @ X2 @ Y4 )
           => ~ ( ord_less_eq @ A @ Y4 @ Z2 ) )
         => ( ( ( ord_less_eq @ A @ Y4 @ X2 )
             => ~ ( ord_less_eq @ A @ X2 @ Z2 ) )
           => ( ( ( ord_less_eq @ A @ X2 @ Z2 )
               => ~ ( ord_less_eq @ A @ Z2 @ Y4 ) )
             => ( ( ( ord_less_eq @ A @ Z2 @ Y4 )
                 => ~ ( ord_less_eq @ A @ Y4 @ X2 ) )
               => ( ( ( ord_less_eq @ A @ Y4 @ Z2 )
                   => ~ ( ord_less_eq @ A @ Z2 @ X2 ) )
                 => ~ ( ( ord_less_eq @ A @ Z2 @ X2 )
                     => ~ ( ord_less_eq @ A @ X2 @ Y4 ) ) ) ) ) ) ) ) ).

% le_cases3
thf(fact_170_order_Otrans,axiom,
    ! [A: $tType] :
      ( ( order @ A @ ( type2 @ A ) )
     => ! [A3: A,B3: A,C3: A] :
          ( ( ord_less_eq @ A @ A3 @ B3 )
         => ( ( ord_less_eq @ A @ B3 @ C3 )
           => ( ord_less_eq @ A @ A3 @ C3 ) ) ) ) ).

% order.trans
thf(fact_171_le__cases,axiom,
    ! [A: $tType] :
      ( ( linorder @ A @ ( type2 @ A ) )
     => ! [X2: A,Y4: A] :
          ( ~ ( ord_less_eq @ A @ X2 @ Y4 )
         => ( ord_less_eq @ A @ Y4 @ X2 ) ) ) ).

% le_cases
thf(fact_172_eq__refl,axiom,
    ! [A: $tType] :
      ( ( preorder @ A @ ( type2 @ A ) )
     => ! [X2: A,Y4: A] :
          ( ( X2 = Y4 )
         => ( ord_less_eq @ A @ X2 @ Y4 ) ) ) ).

% eq_refl
thf(fact_173_linear,axiom,
    ! [A: $tType] :
      ( ( linorder @ A @ ( type2 @ A ) )
     => ! [X2: A,Y4: A] :
          ( ( ord_less_eq @ A @ X2 @ Y4 )
          | ( ord_less_eq @ A @ Y4 @ X2 ) ) ) ).

% linear
thf(fact_174_antisym,axiom,
    ! [A: $tType] :
      ( ( order @ A @ ( type2 @ A ) )
     => ! [X2: A,Y4: A] :
          ( ( ord_less_eq @ A @ X2 @ Y4 )
         => ( ( ord_less_eq @ A @ Y4 @ X2 )
           => ( X2 = Y4 ) ) ) ) ).

% antisym
thf(fact_175_eq__iff,axiom,
    ! [A: $tType] :
      ( ( order @ A @ ( type2 @ A ) )
     => ( ( ^ [Y2: A,Z: A] : Y2 = Z )
        = ( ^ [X3: A,Y3: A] :
              ( ( ord_less_eq @ A @ X3 @ Y3 )
              & ( ord_less_eq @ A @ Y3 @ X3 ) ) ) ) ) ).

% eq_iff
thf(fact_176_ord__le__eq__subst,axiom,
    ! [A: $tType,B: $tType] :
      ( ( ( ord @ B @ ( type2 @ B ) )
        & ( ord @ A @ ( type2 @ A ) ) )
     => ! [A3: A,B3: A,F3: A > B,C3: B] :
          ( ( ord_less_eq @ A @ A3 @ B3 )
         => ( ( ( F3 @ B3 )
              = C3 )
           => ( ! [X: A,Y: A] :
                  ( ( ord_less_eq @ A @ X @ Y )
                 => ( ord_less_eq @ B @ ( F3 @ X ) @ ( F3 @ Y ) ) )
             => ( ord_less_eq @ B @ ( F3 @ A3 ) @ C3 ) ) ) ) ) ).

% ord_le_eq_subst
thf(fact_177_ord__eq__le__subst,axiom,
    ! [A: $tType,B: $tType] :
      ( ( ( ord @ B @ ( type2 @ B ) )
        & ( ord @ A @ ( type2 @ A ) ) )
     => ! [A3: A,F3: B > A,B3: B,C3: B] :
          ( ( A3
            = ( F3 @ B3 ) )
         => ( ( ord_less_eq @ B @ B3 @ C3 )
           => ( ! [X: B,Y: B] :
                  ( ( ord_less_eq @ B @ X @ Y )
                 => ( ord_less_eq @ A @ ( F3 @ X ) @ ( F3 @ Y ) ) )
             => ( ord_less_eq @ A @ A3 @ ( F3 @ C3 ) ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_178_order__subst2,axiom,
    ! [A: $tType,C: $tType] :
      ( ( ( order @ C @ ( type2 @ C ) )
        & ( order @ A @ ( type2 @ A ) ) )
     => ! [A3: A,B3: A,F3: A > C,C3: C] :
          ( ( ord_less_eq @ A @ A3 @ B3 )
         => ( ( ord_less_eq @ C @ ( F3 @ B3 ) @ C3 )
           => ( ! [X: A,Y: A] :
                  ( ( ord_less_eq @ A @ X @ Y )
                 => ( ord_less_eq @ C @ ( F3 @ X ) @ ( F3 @ Y ) ) )
             => ( ord_less_eq @ C @ ( F3 @ A3 ) @ C3 ) ) ) ) ) ).

% order_subst2
thf(fact_179_order__subst1,axiom,
    ! [A: $tType,B: $tType] :
      ( ( ( order @ B @ ( type2 @ B ) )
        & ( order @ A @ ( type2 @ A ) ) )
     => ! [A3: A,F3: B > A,B3: B,C3: B] :
          ( ( ord_less_eq @ A @ A3 @ ( F3 @ B3 ) )
         => ( ( ord_less_eq @ B @ B3 @ C3 )
           => ( ! [X: B,Y: B] :
                  ( ( ord_less_eq @ B @ X @ Y )
                 => ( ord_less_eq @ A @ ( F3 @ X ) @ ( F3 @ Y ) ) )
             => ( ord_less_eq @ A @ A3 @ ( F3 @ C3 ) ) ) ) ) ) ).

% order_subst1
thf(fact_180_rev__predicate2D,axiom,
    ! [A: $tType,B: $tType,P: A > B > $o,X2: A,Y4: B,Q: A > B > $o] :
      ( ( P @ X2 @ Y4 )
     => ( ( ord_less_eq @ ( A > B > $o ) @ P @ Q )
       => ( Q @ X2 @ Y4 ) ) ) ).

% rev_predicate2D
thf(fact_181_predicate2D,axiom,
    ! [A: $tType,B: $tType,P: A > B > $o,Q: A > B > $o,X2: A,Y4: B] :
      ( ( ord_less_eq @ ( A > B > $o ) @ P @ Q )
     => ( ( P @ X2 @ Y4 )
       => ( Q @ X2 @ Y4 ) ) ) ).

% predicate2D
thf(fact_182_le__fun__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( ord @ B @ ( type2 @ B ) )
     => ( ( ord_less_eq @ ( A > B ) )
        = ( ^ [F: A > B,G3: A > B] :
            ! [X3: A] : ( ord_less_eq @ B @ ( F @ X3 ) @ ( G3 @ X3 ) ) ) ) ) ).

% le_fun_def
thf(fact_183_le__funI,axiom,
    ! [B: $tType,A: $tType] :
      ( ( ord @ B @ ( type2 @ B ) )
     => ! [F3: A > B,G: A > B] :
          ( ! [X: A] : ( ord_less_eq @ B @ ( F3 @ X ) @ ( G @ X ) )
         => ( ord_less_eq @ ( A > B ) @ F3 @ G ) ) ) ).

% le_funI
thf(fact_184_lfp_Omonotone__if__bot,axiom,
    ! [B: $tType,A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [Bound: A,G: A > B,Bot: B,F3: A > B,Ord2: B > B > $o] :
          ( ! [X: A] :
              ( ( ( ord_less_eq @ A @ X @ Bound )
               => ( ( G @ X )
                  = Bot ) )
              & ( ~ ( ord_less_eq @ A @ X @ Bound )
               => ( ( G @ X )
                  = ( F3 @ X ) ) ) )
         => ( ! [X: A,Y: A] :
                ( ( ord_less_eq @ A @ X @ Y )
               => ( ~ ( ord_less_eq @ A @ X @ Bound )
                 => ( Ord2 @ ( F3 @ X ) @ ( F3 @ Y ) ) ) )
           => ( ! [X: A] :
                  ( ~ ( ord_less_eq @ A @ X @ Bound )
                 => ( Ord2 @ Bot @ ( F3 @ X ) ) )
             => ( ( Ord2 @ Bot @ Bot )
               => ( comple1396247847notone @ A @ B @ ( ord_less_eq @ A ) @ Ord2 @ G ) ) ) ) ) ) ).

% lfp.monotone_if_bot
thf(fact_185_mono__transfer,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType] :
      ( ( ( order @ B @ ( type2 @ B ) )
        & ( order @ D @ ( type2 @ D ) )
        & ( order @ C @ ( type2 @ C ) )
        & ( order @ A @ ( type2 @ A ) ) )
     => ! [A2: A > B > $o,B2: C > D > $o] :
          ( ( bi_total @ A @ B @ A2 )
         => ( ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ A2
              @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2
                @ ^ [Y2: $o,Z: $o] : Y2 = Z )
              @ ( ord_less_eq @ A )
              @ ( ord_less_eq @ B ) )
           => ( ( bNF_rel_fun @ C @ D @ ( C > $o ) @ ( D > $o ) @ B2
                @ ( bNF_rel_fun @ C @ D @ $o @ $o @ B2
                  @ ^ [Y2: $o,Z: $o] : Y2 = Z )
                @ ( ord_less_eq @ C )
                @ ( ord_less_eq @ D ) )
             => ( bNF_rel_fun @ ( A > C ) @ ( B > D ) @ $o @ $o @ ( bNF_rel_fun @ A @ B @ C @ D @ A2 @ B2 )
                @ ^ [Y2: $o,Z: $o] : Y2 = Z
                @ ( order_mono @ A @ C )
                @ ( order_mono @ B @ D ) ) ) ) ) ) ).

% mono_transfer
thf(fact_186_neg__fun__distr2,axiom,
    ! [F2: $tType,E: $tType,A: $tType,B: $tType,D: $tType,C: $tType,R8: A > B > $o,S6: C > D > $o,R: E > A > $o,S2: F2 > C > $o] :
      ( ( right_unique @ A @ B @ R8 )
     => ( ( left_total @ A @ B @ R8 )
       => ( ( left_unique @ C @ D @ S6 )
         => ( ( right_total @ C @ D @ S6 )
           => ( ord_less_eq @ ( ( E > F2 ) > ( B > D ) > $o ) @ ( bNF_rel_fun @ E @ B @ F2 @ D @ ( relcompp @ E @ A @ B @ R @ R8 ) @ ( relcompp @ F2 @ C @ D @ S2 @ S6 ) ) @ ( relcompp @ ( E > F2 ) @ ( A > C ) @ ( B > D ) @ ( bNF_rel_fun @ E @ A @ F2 @ C @ R @ S2 ) @ ( bNF_rel_fun @ A @ B @ C @ D @ R8 @ S6 ) ) ) ) ) ) ) ).

% neg_fun_distr2
thf(fact_187_monoD,axiom,
    ! [B: $tType,A: $tType] :
      ( ( ( order @ A @ ( type2 @ A ) )
        & ( order @ B @ ( type2 @ B ) ) )
     => ! [F3: A > B,X2: A,Y4: A] :
          ( ( order_mono @ A @ B @ F3 )
         => ( ( ord_less_eq @ A @ X2 @ Y4 )
           => ( ord_less_eq @ B @ ( F3 @ X2 ) @ ( F3 @ Y4 ) ) ) ) ) ).

% monoD
thf(fact_188_monoE,axiom,
    ! [B: $tType,A: $tType] :
      ( ( ( order @ A @ ( type2 @ A ) )
        & ( order @ B @ ( type2 @ B ) ) )
     => ! [F3: A > B,X2: A,Y4: A] :
          ( ( order_mono @ A @ B @ F3 )
         => ( ( ord_less_eq @ A @ X2 @ Y4 )
           => ( ord_less_eq @ B @ ( F3 @ X2 ) @ ( F3 @ Y4 ) ) ) ) ) ).

% monoE
thf(fact_189_monoI,axiom,
    ! [B: $tType,A: $tType] :
      ( ( ( order @ A @ ( type2 @ A ) )
        & ( order @ B @ ( type2 @ B ) ) )
     => ! [F3: A > B] :
          ( ! [X: A,Y: A] :
              ( ( ord_less_eq @ A @ X @ Y )
             => ( ord_less_eq @ B @ ( F3 @ X ) @ ( F3 @ Y ) ) )
         => ( order_mono @ A @ B @ F3 ) ) ) ).

% monoI
thf(fact_190_mono__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( ( order @ A @ ( type2 @ A ) )
        & ( order @ B @ ( type2 @ B ) ) )
     => ( ( order_mono @ A @ B )
        = ( ^ [F: A > B] :
            ! [X3: A,Y3: A] :
              ( ( ord_less_eq @ A @ X3 @ Y3 )
             => ( ord_less_eq @ B @ ( F @ X3 ) @ ( F @ Y3 ) ) ) ) ) ) ).

% mono_def
thf(fact_191_right__unique__fun,axiom,
    ! [A: $tType,B: $tType,D: $tType,C: $tType,A2: A > B > $o,B2: C > D > $o] :
      ( ( right_total @ A @ B @ A2 )
     => ( ( right_unique @ C @ D @ B2 )
       => ( right_unique @ ( A > C ) @ ( B > D ) @ ( bNF_rel_fun @ A @ B @ C @ D @ A2 @ B2 ) ) ) ) ).

% right_unique_fun
thf(fact_192_left__unique__fun,axiom,
    ! [A: $tType,B: $tType,D: $tType,C: $tType,A2: A > B > $o,B2: C > D > $o] :
      ( ( left_total @ A @ B @ A2 )
     => ( ( left_unique @ C @ D @ B2 )
       => ( left_unique @ ( A > C ) @ ( B > D ) @ ( bNF_rel_fun @ A @ B @ C @ D @ A2 @ B2 ) ) ) ) ).

% left_unique_fun
thf(fact_193_right__unique__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( right_unique @ A @ B )
      = ( ^ [R5: A > B > $o] :
          ! [X3: A,Y3: B,Z3: B] :
            ( ( R5 @ X3 @ Y3 )
           => ( ( R5 @ X3 @ Z3 )
             => ( Y3 = Z3 ) ) ) ) ) ).

% right_unique_def
thf(fact_194_right__unique__eq,axiom,
    ! [A: $tType] :
      ( right_unique @ A @ A
      @ ^ [Y2: A,Z: A] : Y2 = Z ) ).

% right_unique_eq
thf(fact_195_left__unique__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( left_unique @ A @ B )
      = ( ^ [R5: A > B > $o] :
          ! [X3: A,Y3: A,Z3: B] :
            ( ( R5 @ X3 @ Z3 )
           => ( ( R5 @ Y3 @ Z3 )
             => ( X3 = Y3 ) ) ) ) ) ).

% left_unique_def
thf(fact_196_left__unique__eq,axiom,
    ! [A: $tType] :
      ( left_unique @ A @ A
      @ ^ [Y2: A,Z: A] : Y2 = Z ) ).

% left_unique_eq
thf(fact_197_right__uniqueI,axiom,
    ! [B: $tType,A: $tType,A2: A > B > $o] :
      ( ! [X: A,Y: B,Z4: B] :
          ( ( A2 @ X @ Y )
         => ( ( A2 @ X @ Z4 )
           => ( Y = Z4 ) ) )
     => ( right_unique @ A @ B @ A2 ) ) ).

% right_uniqueI
thf(fact_198_right__uniqueD,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o,X2: A,Y4: B,Z2: B] :
      ( ( right_unique @ A @ B @ A2 )
     => ( ( A2 @ X2 @ Y4 )
       => ( ( A2 @ X2 @ Z2 )
         => ( Y4 = Z2 ) ) ) ) ).

% right_uniqueD
thf(fact_199_left__uniqueI,axiom,
    ! [B: $tType,A: $tType,A2: A > B > $o] :
      ( ! [X: A,Y: A,Z4: B] :
          ( ( A2 @ X @ Z4 )
         => ( ( A2 @ Y @ Z4 )
           => ( X = Y ) ) )
     => ( left_unique @ A @ B @ A2 ) ) ).

% left_uniqueI
thf(fact_200_left__uniqueD,axiom,
    ! [B: $tType,A: $tType,A2: A > B > $o,X2: A,Z2: B,Y4: A] :
      ( ( left_unique @ A @ B @ A2 )
     => ( ( A2 @ X2 @ Z2 )
       => ( ( A2 @ Y4 @ Z2 )
         => ( X2 = Y4 ) ) ) ) ).

% left_uniqueD
thf(fact_201_tllist_Oleft__unique__rel,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,R1: A > C > $o,R2: B > D > $o] :
      ( ( left_unique @ A @ C @ R1 )
     => ( ( left_unique @ B @ D @ R2 )
       => ( left_unique @ ( tLList446370796tllist @ A @ B ) @ ( tLList446370796tllist @ C @ D ) @ ( tLList1380991092t_all2 @ A @ C @ B @ D @ R1 @ R2 ) ) ) ) ).

% tllist.left_unique_rel
thf(fact_202_tllist_Oright__unique__rel,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,R1: A > C > $o,R2: B > D > $o] :
      ( ( right_unique @ A @ C @ R1 )
     => ( ( right_unique @ B @ D @ R2 )
       => ( right_unique @ ( tLList446370796tllist @ A @ B ) @ ( tLList446370796tllist @ C @ D ) @ ( tLList1380991092t_all2 @ A @ C @ B @ D @ R1 @ R2 ) ) ) ) ).

% tllist.right_unique_rel
thf(fact_203_functional__relation,axiom,
    ! [A: $tType,B: $tType,R: A > B > $o] :
      ( ( right_unique @ A @ B @ R )
     => ( ( left_total @ A @ B @ R )
       => ! [X6: A] :
          ? [Xa2: B] :
            ( ( R @ X6 @ Xa2 )
            & ! [Y6: B] :
                ( ( R @ X6 @ Y6 )
               => ( Y6 = Xa2 ) ) ) ) ) ).

% functional_relation
thf(fact_204_functional__converse__relation,axiom,
    ! [B: $tType,A: $tType,R: A > B > $o] :
      ( ( left_unique @ A @ B @ R )
     => ( ( right_total @ A @ B @ R )
       => ! [Y6: B] :
          ? [X: A] :
            ( ( R @ X @ Y6 )
            & ! [Ya3: A] :
                ( ( R @ Ya3 @ Y6 )
               => ( Ya3 = X ) ) ) ) ) ).

% functional_converse_relation
thf(fact_205_left__unique__OO,axiom,
    ! [A: $tType,C: $tType,B: $tType,R: A > B > $o,S2: B > C > $o] :
      ( ( left_unique @ A @ B @ R )
     => ( ( left_unique @ B @ C @ S2 )
       => ( left_unique @ A @ C @ ( relcompp @ A @ B @ C @ R @ S2 ) ) ) ) ).

% left_unique_OO
thf(fact_206_right__unique__OO,axiom,
    ! [A: $tType,C: $tType,B: $tType,A2: A > B > $o,B2: B > C > $o] :
      ( ( right_unique @ A @ B @ A2 )
     => ( ( right_unique @ B @ C @ B2 )
       => ( right_unique @ A @ C @ ( relcompp @ A @ B @ C @ A2 @ B2 ) ) ) ) ).

% right_unique_OO
thf(fact_207_right__total__fun,axiom,
    ! [A: $tType,B: $tType,D: $tType,C: $tType,A2: A > B > $o,B2: C > D > $o] :
      ( ( right_unique @ A @ B @ A2 )
     => ( ( right_total @ C @ D @ B2 )
       => ( right_total @ ( A > C ) @ ( B > D ) @ ( bNF_rel_fun @ A @ B @ C @ D @ A2 @ B2 ) ) ) ) ).

% right_total_fun
thf(fact_208_eq__imp__transfer,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o] :
      ( ( right_unique @ A @ B @ A2 )
     => ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ A2 @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2 @ (=>) )
        @ ^ [Y2: A,Z: A] : Y2 = Z
        @ ^ [Y2: B,Z: B] : Y2 = Z ) ) ).

% eq_imp_transfer
thf(fact_209_right__unique__alt__def2,axiom,
    ! [B: $tType,A: $tType] :
      ( ( right_unique @ A @ B )
      = ( ^ [R5: A > B > $o] :
            ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ R5 @ ( bNF_rel_fun @ A @ B @ $o @ $o @ R5 @ (=>) )
            @ ^ [Y2: A,Z: A] : Y2 = Z
            @ ^ [Y2: B,Z: B] : Y2 = Z ) ) ) ).

% right_unique_alt_def2
thf(fact_210_left__total__fun,axiom,
    ! [A: $tType,B: $tType,D: $tType,C: $tType,A2: A > B > $o,B2: C > D > $o] :
      ( ( left_unique @ A @ B @ A2 )
     => ( ( left_total @ C @ D @ B2 )
       => ( left_total @ ( A > C ) @ ( B > D ) @ ( bNF_rel_fun @ A @ B @ C @ D @ A2 @ B2 ) ) ) ) ).

% left_total_fun
thf(fact_211_lfp_Oleq__refl,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [X2: A] : ( ord_less_eq @ A @ X2 @ X2 ) ) ).

% lfp.leq_refl
thf(fact_212_gfp_Oleq__trans,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [Y4: A,X2: A,Z2: A] :
          ( ( ord_less_eq @ A @ Y4 @ X2 )
         => ( ( ord_less_eq @ A @ Z2 @ Y4 )
           => ( ord_less_eq @ A @ Z2 @ X2 ) ) ) ) ).

% gfp.leq_trans
thf(fact_213_lfp_Oleq__trans,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [X2: A,Y4: A,Z2: A] :
          ( ( ord_less_eq @ A @ X2 @ Y4 )
         => ( ( ord_less_eq @ A @ Y4 @ Z2 )
           => ( ord_less_eq @ A @ X2 @ Z2 ) ) ) ) ).

% lfp.leq_trans
thf(fact_214_gfp_Oleq__antisym,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [Y4: A,X2: A] :
          ( ( ord_less_eq @ A @ Y4 @ X2 )
         => ( ( ord_less_eq @ A @ X2 @ Y4 )
           => ( X2 = Y4 ) ) ) ) ).

% gfp.leq_antisym
thf(fact_215_lfp_Oleq__antisym,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [X2: A,Y4: A] :
          ( ( ord_less_eq @ A @ X2 @ Y4 )
         => ( ( ord_less_eq @ A @ Y4 @ X2 )
           => ( X2 = Y4 ) ) ) ) ).

% lfp.leq_antisym
thf(fact_216_neg__fun__distr1,axiom,
    ! [D: $tType,A: $tType,B: $tType,C: $tType,E: $tType,F2: $tType,R: A > B > $o,R8: B > C > $o,S2: D > F2 > $o,S6: F2 > E > $o] :
      ( ( left_unique @ A @ B @ R )
     => ( ( right_total @ A @ B @ R )
       => ( ( right_unique @ B @ C @ R8 )
         => ( ( left_total @ B @ C @ R8 )
           => ( ord_less_eq @ ( ( A > D ) > ( C > E ) > $o ) @ ( bNF_rel_fun @ A @ C @ D @ E @ ( relcompp @ A @ B @ C @ R @ R8 ) @ ( relcompp @ D @ F2 @ E @ S2 @ S6 ) ) @ ( relcompp @ ( A > D ) @ ( B > F2 ) @ ( C > E ) @ ( bNF_rel_fun @ A @ B @ D @ F2 @ R @ S2 ) @ ( bNF_rel_fun @ B @ C @ F2 @ E @ R8 @ S6 ) ) ) ) ) ) ) ).

% neg_fun_distr1
thf(fact_217_left__unique__transfer,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,A2: A > B > $o,B2: C > D > $o] :
      ( ( right_total @ A @ B @ A2 )
     => ( ( right_total @ C @ D @ B2 )
       => ( ( bi_unique @ A @ B @ A2 )
         => ( bNF_rel_fun @ ( A > C > $o ) @ ( B > D > $o ) @ $o @ $o
            @ ( bNF_rel_fun @ A @ B @ ( C > $o ) @ ( D > $o ) @ A2
              @ ( bNF_rel_fun @ C @ D @ $o @ $o @ B2
                @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
            @ (=>)
            @ ( left_unique @ A @ C )
            @ ( left_unique @ B @ D ) ) ) ) ) ).

% left_unique_transfer
thf(fact_218_right__unique__transfer,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,A2: A > B > $o,B2: C > D > $o] :
      ( ( right_total @ A @ B @ A2 )
     => ( ( right_total @ C @ D @ B2 )
       => ( ( bi_unique @ C @ D @ B2 )
         => ( bNF_rel_fun @ ( A > C > $o ) @ ( B > D > $o ) @ $o @ $o
            @ ( bNF_rel_fun @ A @ B @ ( C > $o ) @ ( D > $o ) @ A2
              @ ( bNF_rel_fun @ C @ D @ $o @ $o @ B2
                @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
            @ (=>)
            @ ( right_unique @ A @ C )
            @ ( right_unique @ B @ D ) ) ) ) ) ).

% right_unique_transfer
thf(fact_219_left__unique__parametric,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,A2: A > B > $o,B2: C > D > $o] :
      ( ( bi_unique @ A @ B @ A2 )
     => ( ( bi_total @ A @ B @ A2 )
       => ( ( bi_total @ C @ D @ B2 )
         => ( bNF_rel_fun @ ( A > C > $o ) @ ( B > D > $o ) @ $o @ $o
            @ ( bNF_rel_fun @ A @ B @ ( C > $o ) @ ( D > $o ) @ A2
              @ ( bNF_rel_fun @ C @ D @ $o @ $o @ B2
                @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
            @ ^ [Y2: $o,Z: $o] : Y2 = Z
            @ ( left_unique @ A @ C )
            @ ( left_unique @ B @ D ) ) ) ) ) ).

% left_unique_parametric
thf(fact_220_bi__total__fun,axiom,
    ! [A: $tType,B: $tType,D: $tType,C: $tType,A2: A > B > $o,B2: C > D > $o] :
      ( ( bi_unique @ A @ B @ A2 )
     => ( ( bi_total @ C @ D @ B2 )
       => ( bi_total @ ( A > C ) @ ( B > D ) @ ( bNF_rel_fun @ A @ B @ C @ D @ A2 @ B2 ) ) ) ) ).

% bi_total_fun
thf(fact_221_eq__transfer,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o] :
      ( ( bi_unique @ A @ B @ A2 )
     => ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ A2
        @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2
          @ ^ [Y2: $o,Z: $o] : Y2 = Z )
        @ ^ [Y2: A,Z: A] : Y2 = Z
        @ ^ [Y2: B,Z: B] : Y2 = Z ) ) ).

% eq_transfer
thf(fact_222_bi__unique__alt__def2,axiom,
    ! [B: $tType,A: $tType] :
      ( ( bi_unique @ A @ B )
      = ( ^ [R5: A > B > $o] :
            ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ R5
            @ ( bNF_rel_fun @ A @ B @ $o @ $o @ R5
              @ ^ [Y2: $o,Z: $o] : Y2 = Z )
            @ ^ [Y2: A,Z: A] : Y2 = Z
            @ ^ [Y2: B,Z: B] : Y2 = Z ) ) ) ).

% bi_unique_alt_def2
thf(fact_223_bi__unique__fun,axiom,
    ! [A: $tType,B: $tType,D: $tType,C: $tType,A2: A > B > $o,B2: C > D > $o] :
      ( ( bi_total @ A @ B @ A2 )
     => ( ( bi_unique @ C @ D @ B2 )
       => ( bi_unique @ ( A > C ) @ ( B > D ) @ ( bNF_rel_fun @ A @ B @ C @ D @ A2 @ B2 ) ) ) ) ).

% bi_unique_fun
thf(fact_224_bi__uniqueDl,axiom,
    ! [B: $tType,A: $tType,A2: A > B > $o,X2: A,Y4: B,Z2: A] :
      ( ( bi_unique @ A @ B @ A2 )
     => ( ( A2 @ X2 @ Y4 )
       => ( ( A2 @ Z2 @ Y4 )
         => ( X2 = Z2 ) ) ) ) ).

% bi_uniqueDl
thf(fact_225_bi__uniqueDr,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o,X2: A,Y4: B,Z2: B] :
      ( ( bi_unique @ A @ B @ A2 )
     => ( ( A2 @ X2 @ Y4 )
       => ( ( A2 @ X2 @ Z2 )
         => ( Y4 = Z2 ) ) ) ) ).

% bi_uniqueDr
thf(fact_226_bi__unique__eq,axiom,
    ! [A: $tType] :
      ( bi_unique @ A @ A
      @ ^ [Y2: A,Z: A] : Y2 = Z ) ).

% bi_unique_eq
thf(fact_227_bi__unique__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( bi_unique @ A @ B )
      = ( ^ [R5: A > B > $o] :
            ( ! [X3: A,Y3: B,Z3: B] :
                ( ( R5 @ X3 @ Y3 )
               => ( ( R5 @ X3 @ Z3 )
                 => ( Y3 = Z3 ) ) )
            & ! [X3: A,Y3: A,Z3: B] :
                ( ( R5 @ X3 @ Z3 )
               => ( ( R5 @ Y3 @ Z3 )
                 => ( X3 = Y3 ) ) ) ) ) ) ).

% bi_unique_def
thf(fact_228_tllist_Obi__unique__rel,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,R1: A > C > $o,R2: B > D > $o] :
      ( ( bi_unique @ A @ C @ R1 )
     => ( ( bi_unique @ B @ D @ R2 )
       => ( bi_unique @ ( tLList446370796tllist @ A @ B ) @ ( tLList446370796tllist @ C @ D ) @ ( tLList1380991092t_all2 @ A @ C @ B @ D @ R1 @ R2 ) ) ) ) ).

% tllist.bi_unique_rel
thf(fact_229_bi__unique__OO,axiom,
    ! [A: $tType,C: $tType,B: $tType,A2: A > B > $o,B2: B > C > $o] :
      ( ( bi_unique @ A @ B @ A2 )
     => ( ( bi_unique @ B @ C @ B2 )
       => ( bi_unique @ A @ C @ ( relcompp @ A @ B @ C @ A2 @ B2 ) ) ) ) ).

% bi_unique_OO
thf(fact_230_bi__uniqueI,axiom,
    ! [B: $tType,A: $tType,R: A > B > $o] :
      ( ( left_unique @ A @ B @ R )
     => ( ( right_unique @ A @ B @ R )
       => ( bi_unique @ A @ B @ R ) ) ) ).

% bi_uniqueI
thf(fact_231_bi__unique__alt__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( bi_unique @ A @ B )
      = ( ^ [A6: A > B > $o] :
            ( ( left_unique @ A @ B @ A6 )
            & ( right_unique @ A @ B @ A6 ) ) ) ) ).

% bi_unique_alt_def
thf(fact_232_right__unique__parametric,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,A2: A > B > $o,B2: C > D > $o] :
      ( ( bi_total @ A @ B @ A2 )
     => ( ( bi_unique @ C @ D @ B2 )
       => ( ( bi_total @ C @ D @ B2 )
         => ( bNF_rel_fun @ ( A > C > $o ) @ ( B > D > $o ) @ $o @ $o
            @ ( bNF_rel_fun @ A @ B @ ( C > $o ) @ ( D > $o ) @ A2
              @ ( bNF_rel_fun @ C @ D @ $o @ $o @ B2
                @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
            @ ^ [Y2: $o,Z: $o] : Y2 = Z
            @ ( right_unique @ A @ C )
            @ ( right_unique @ B @ D ) ) ) ) ) ).

% right_unique_parametric
thf(fact_233_fun__upd__transfer,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,A2: A > B > $o,B2: C > D > $o] :
      ( ( bi_unique @ A @ B @ A2 )
     => ( bNF_rel_fun @ ( A > C ) @ ( B > D ) @ ( A > C > A > C ) @ ( B > D > B > D ) @ ( bNF_rel_fun @ A @ B @ C @ D @ A2 @ B2 ) @ ( bNF_rel_fun @ A @ B @ ( C > A > C ) @ ( D > B > D ) @ A2 @ ( bNF_rel_fun @ C @ D @ ( A > C ) @ ( B > D ) @ B2 @ ( bNF_rel_fun @ A @ B @ C @ D @ A2 @ B2 ) ) ) @ ( fun_upd @ A @ C ) @ ( fun_upd @ B @ D ) ) ) ).

% fun_upd_transfer
thf(fact_234_rtranclp__parametric,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o] :
      ( ( bi_unique @ A @ B @ A2 )
     => ( ( bi_total @ A @ B @ A2 )
       => ( bNF_rel_fun @ ( A > A > $o ) @ ( B > B > $o ) @ ( A > A > $o ) @ ( B > B > $o )
          @ ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ A2
            @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2
              @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
          @ ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ A2
            @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2
              @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
          @ ( transitive_rtranclp @ A )
          @ ( transitive_rtranclp @ B ) ) ) ) ).

% rtranclp_parametric
thf(fact_235_fun__upd__apply,axiom,
    ! [A: $tType,B: $tType] :
      ( ( fun_upd @ B @ A )
      = ( ^ [F: B > A,X3: B,Y3: A,Z3: B] : ( if @ A @ ( Z3 = X3 ) @ Y3 @ ( F @ Z3 ) ) ) ) ).

% fun_upd_apply
thf(fact_236_fun__upd__triv,axiom,
    ! [B: $tType,A: $tType,F3: A > B,X2: A] :
      ( ( fun_upd @ A @ B @ F3 @ X2 @ ( F3 @ X2 ) )
      = F3 ) ).

% fun_upd_triv
thf(fact_237_fun__upd__upd,axiom,
    ! [A: $tType,B: $tType,F3: A > B,X2: A,Y4: B,Z2: B] :
      ( ( fun_upd @ A @ B @ ( fun_upd @ A @ B @ F3 @ X2 @ Y4 ) @ X2 @ Z2 )
      = ( fun_upd @ A @ B @ F3 @ X2 @ Z2 ) ) ).

% fun_upd_upd
thf(fact_238_fun__upd__idem__iff,axiom,
    ! [A: $tType,B: $tType,F3: A > B,X2: A,Y4: B] :
      ( ( ( fun_upd @ A @ B @ F3 @ X2 @ Y4 )
        = F3 )
      = ( ( F3 @ X2 )
        = Y4 ) ) ).

% fun_upd_idem_iff
thf(fact_239_fun__upd__twist,axiom,
    ! [A: $tType,B: $tType,A3: A,C3: A,M2: A > B,B3: B,D3: B] :
      ( ( A3 != C3 )
     => ( ( fun_upd @ A @ B @ ( fun_upd @ A @ B @ M2 @ A3 @ B3 ) @ C3 @ D3 )
        = ( fun_upd @ A @ B @ ( fun_upd @ A @ B @ M2 @ C3 @ D3 ) @ A3 @ B3 ) ) ) ).

% fun_upd_twist
thf(fact_240_fun__upd__other,axiom,
    ! [B: $tType,A: $tType,Z2: A,X2: A,F3: A > B,Y4: B] :
      ( ( Z2 != X2 )
     => ( ( fun_upd @ A @ B @ F3 @ X2 @ Y4 @ Z2 )
        = ( F3 @ Z2 ) ) ) ).

% fun_upd_other
thf(fact_241_fun__upd__same,axiom,
    ! [B: $tType,A: $tType,F3: B > A,X2: B,Y4: A] :
      ( ( fun_upd @ B @ A @ F3 @ X2 @ Y4 @ X2 )
      = Y4 ) ).

% fun_upd_same
thf(fact_242_fun__upd__idem,axiom,
    ! [A: $tType,B: $tType,F3: B > A,X2: B,Y4: A] :
      ( ( ( F3 @ X2 )
        = Y4 )
     => ( ( fun_upd @ B @ A @ F3 @ X2 @ Y4 )
        = F3 ) ) ).

% fun_upd_idem
thf(fact_243_fun__upd__eqD,axiom,
    ! [A: $tType,B: $tType,F3: A > B,X2: A,Y4: B,G: A > B,Z2: B] :
      ( ( ( fun_upd @ A @ B @ F3 @ X2 @ Y4 )
        = ( fun_upd @ A @ B @ G @ X2 @ Z2 ) )
     => ( Y4 = Z2 ) ) ).

% fun_upd_eqD
thf(fact_244_fun__upd__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( fun_upd @ A @ B )
      = ( ^ [F: A > B,A5: A,B5: B,X3: A] : ( if @ B @ ( X3 = A5 ) @ B5 @ ( F @ X3 ) ) ) ) ).

% fun_upd_def
thf(fact_245_fun__upd__comp,axiom,
    ! [A: $tType,B: $tType,C: $tType,F3: C > B,G: A > C,X2: A,Y4: C] :
      ( ( comp @ C @ B @ A @ F3 @ ( fun_upd @ A @ C @ G @ X2 @ Y4 ) )
      = ( fun_upd @ A @ B @ ( comp @ C @ B @ A @ F3 @ G ) @ X2 @ ( F3 @ Y4 ) ) ) ).

% fun_upd_comp
thf(fact_246_rtranclp__mono,axiom,
    ! [A: $tType,R7: A > A > $o,S4: A > A > $o] :
      ( ( ord_less_eq @ ( A > A > $o ) @ R7 @ S4 )
     => ( ord_less_eq @ ( A > A > $o ) @ ( transitive_rtranclp @ A @ R7 ) @ ( transitive_rtranclp @ A @ S4 ) ) ) ).

% rtranclp_mono
thf(fact_247_rtranclp__subset,axiom,
    ! [A: $tType,R: A > A > $o,S2: A > A > $o] :
      ( ( ord_less_eq @ ( A > A > $o ) @ R @ S2 )
     => ( ( ord_less_eq @ ( A > A > $o ) @ S2 @ ( transitive_rtranclp @ A @ R ) )
       => ( ( transitive_rtranclp @ A @ S2 )
          = ( transitive_rtranclp @ A @ R ) ) ) ) ).

% rtranclp_subset
thf(fact_248_Ex1__parametric,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o] :
      ( ( bi_unique @ A @ B @ A2 )
     => ( ( bi_total @ A @ B @ A2 )
       => ( bNF_rel_fun @ ( A > $o ) @ ( B > $o ) @ $o @ $o
          @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2
            @ ^ [Y2: $o,Z: $o] : Y2 = Z )
          @ ^ [Y2: $o,Z: $o] : Y2 = Z
          @ ( ex1 @ A )
          @ ( ex1 @ B ) ) ) ) ).

% Ex1_parametric
thf(fact_249_fixp__mono,axiom,
    ! [A: $tType] :
      ( ( comple1141879883l_ccpo @ A @ ( type2 @ A ) )
     => ! [F3: A > A,G: A > A] :
          ( ( partial_fun_ord @ A @ A @ A @ ( ord_less_eq @ A ) @ F3 @ G )
         => ( ( comple1396247847notone @ A @ A @ ( ord_less_eq @ A ) @ ( ord_less_eq @ A ) @ F3 )
           => ( ( comple1396247847notone @ A @ A @ ( ord_less_eq @ A ) @ ( ord_less_eq @ A ) @ G )
             => ( ord_less_eq @ A @ ( comple939513234o_fixp @ A @ F3 ) @ ( comple939513234o_fixp @ A @ G ) ) ) ) ) ) ).

% fixp_mono
thf(fact_250_fixp__lowerbound,axiom,
    ! [A: $tType] :
      ( ( comple1141879883l_ccpo @ A @ ( type2 @ A ) )
     => ! [F3: A > A,Z2: A] :
          ( ( comple1396247847notone @ A @ A @ ( ord_less_eq @ A ) @ ( ord_less_eq @ A ) @ F3 )
         => ( ( ord_less_eq @ A @ ( F3 @ Z2 ) @ Z2 )
           => ( ord_less_eq @ A @ ( comple939513234o_fixp @ A @ F3 ) @ Z2 ) ) ) ) ).

% fixp_lowerbound
thf(fact_251_fixp__unfold,axiom,
    ! [A: $tType] :
      ( ( comple1141879883l_ccpo @ A @ ( type2 @ A ) )
     => ! [F3: A > A] :
          ( ( comple1396247847notone @ A @ A @ ( ord_less_eq @ A ) @ ( ord_less_eq @ A ) @ F3 )
         => ( ( comple939513234o_fixp @ A @ F3 )
            = ( F3 @ ( comple939513234o_fixp @ A @ F3 ) ) ) ) ) ).

% fixp_unfold
thf(fact_252_eq__onp__transfer,axiom,
    ! [A: $tType,B: $tType,A2: A > B > $o] :
      ( ( bi_unique @ A @ B @ A2 )
     => ( bNF_rel_fun @ ( A > $o ) @ ( B > $o ) @ ( A > A > $o ) @ ( B > B > $o )
        @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2
          @ ^ [Y2: $o,Z: $o] : Y2 = Z )
        @ ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ A2
          @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A2
            @ ^ [Y2: $o,Z: $o] : Y2 = Z ) )
        @ ( bNF_eq_onp @ A )
        @ ( bNF_eq_onp @ B ) ) ) ).

% eq_onp_transfer
thf(fact_253_iterates__fixp,axiom,
    ! [A: $tType] :
      ( ( comple1141879883l_ccpo @ A @ ( type2 @ A ) )
     => ! [F3: A > A] :
          ( ( comple1396247847notone @ A @ A @ ( ord_less_eq @ A ) @ ( ord_less_eq @ A ) @ F3 )
         => ( member @ A @ ( comple939513234o_fixp @ A @ F3 ) @ ( comple453842640erates @ A @ F3 ) ) ) ) ).

% iterates_fixp
thf(fact_254_iterates_Ostep,axiom,
    ! [A: $tType] :
      ( ( comple1141879883l_ccpo @ A @ ( type2 @ A ) )
     => ! [X2: A,F3: A > A] :
          ( ( member @ A @ X2 @ ( comple453842640erates @ A @ F3 ) )
         => ( member @ A @ ( F3 @ X2 ) @ ( comple453842640erates @ A @ F3 ) ) ) ) ).

% iterates.step
thf(fact_255_eq__onp__eqD,axiom,
    ! [A: $tType,P: A > $o,Q: A > A > $o,X2: A] :
      ( ( ( bNF_eq_onp @ A @ P )
        = Q )
     => ( ( P @ X2 )
        = ( Q @ X2 @ X2 ) ) ) ).

% eq_onp_eqD

%----Type constructors (16)
thf(tcon_fun___Complete__Lattices_Ocomplete__lattice,axiom,
    ! [A7: $tType,A8: $tType] :
      ( ( comple187826305attice @ A8 @ ( type2 @ A8 ) )
     => ( comple187826305attice @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).

thf(tcon_fun___Complete__Partial__Order_Occpo,axiom,
    ! [A7: $tType,A8: $tType] :
      ( ( comple187826305attice @ A8 @ ( type2 @ A8 ) )
     => ( comple1141879883l_ccpo @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).

thf(tcon_fun___Orderings_Opreorder,axiom,
    ! [A7: $tType,A8: $tType] :
      ( ( preorder @ A8 @ ( type2 @ A8 ) )
     => ( preorder @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).

thf(tcon_fun___Orderings_Oorder,axiom,
    ! [A7: $tType,A8: $tType] :
      ( ( order @ A8 @ ( type2 @ A8 ) )
     => ( order @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).

thf(tcon_fun___Orderings_Oord,axiom,
    ! [A7: $tType,A8: $tType] :
      ( ( ord @ A8 @ ( type2 @ A8 ) )
     => ( ord @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).

thf(tcon_Set_Oset___Complete__Lattices_Ocomplete__lattice_1,axiom,
    ! [A7: $tType] : ( comple187826305attice @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).

thf(tcon_Set_Oset___Complete__Partial__Order_Occpo_2,axiom,
    ! [A7: $tType] : ( comple1141879883l_ccpo @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).

thf(tcon_Set_Oset___Orderings_Opreorder_3,axiom,
    ! [A7: $tType] : ( preorder @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).

thf(tcon_Set_Oset___Orderings_Oorder_4,axiom,
    ! [A7: $tType] : ( order @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).

thf(tcon_Set_Oset___Orderings_Oord_5,axiom,
    ! [A7: $tType] : ( ord @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).

thf(tcon_HOL_Obool___Complete__Lattices_Ocomplete__lattice_6,axiom,
    comple187826305attice @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Complete__Partial__Order_Occpo_7,axiom,
    comple1141879883l_ccpo @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Orderings_Opreorder_8,axiom,
    preorder @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Orderings_Olinorder,axiom,
    linorder @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Orderings_Oorder_9,axiom,
    order @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Orderings_Oord_10,axiom,
    ord @ $o @ ( type2 @ $o ) ).

%----Helper facts (3)
thf(help_If_3_1_T,axiom,
    ! [P: $o] :
      ( ( P = $true )
      | ( P = $false ) ) ).

thf(help_If_2_1_T,axiom,
    ! [A: $tType,X2: A,Y4: A] :
      ( ( if @ A @ $false @ X2 @ Y4 )
      = Y4 ) ).

thf(help_If_1_1_T,axiom,
    ! [A: $tType,X2: A,Y4: A] :
      ( ( if @ A @ $true @ X2 @ Y4 )
      = X2 ) ).

%----Conjectures (1)
thf(conj_0,conjecture,
    ( bNF_rel_fun @ ( a > $o ) @ ( b > $o ) @ ( ( a > c ) > ( a > d ) > ( a > a ) > a > ( tLList446370796tllist @ d @ c ) ) @ ( ( b > e ) > ( b > f ) > ( b > b ) > b > ( tLList446370796tllist @ f @ e ) )
    @ ( bNF_rel_fun @ a @ b @ $o @ $o @ a2
      @ ^ [Y2: $o,Z: $o] : Y2 = Z )
    @ ( bNF_rel_fun @ ( a > c ) @ ( b > e ) @ ( ( a > d ) > ( a > a ) > a > ( tLList446370796tllist @ d @ c ) ) @ ( ( b > f ) > ( b > b ) > b > ( tLList446370796tllist @ f @ e ) ) @ ( bNF_rel_fun @ a @ b @ c @ e @ a2 @ b2 ) @ ( bNF_rel_fun @ ( a > d ) @ ( b > f ) @ ( ( a > a ) > a > ( tLList446370796tllist @ d @ c ) ) @ ( ( b > b ) > b > ( tLList446370796tllist @ f @ e ) ) @ ( bNF_rel_fun @ a @ b @ d @ f @ a2 @ c2 ) @ ( bNF_rel_fun @ ( a > a ) @ ( b > b ) @ ( a > ( tLList446370796tllist @ d @ c ) ) @ ( b > ( tLList446370796tllist @ f @ e ) ) @ ( bNF_rel_fun @ a @ b @ a @ b @ a2 @ a2 ) @ ( bNF_rel_fun @ a @ b @ ( tLList446370796tllist @ d @ c ) @ ( tLList446370796tllist @ f @ e ) @ a2 @ ( tLList1380991092t_all2 @ d @ f @ c @ e @ c2 @ b2 ) ) ) ) )
    @ ( tLList636831159tllist @ a @ c @ d )
    @ ( tLList636831159tllist @ b @ e @ f ) ) ).

%------------------------------------------------------------------------------